math.abs on complex

Time bar (total: 4.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 10 to 5 computations (50% saved)

sample953.0ms (22.3%)

Memory
-18.4MiB live, 495.3MiB allocated
Samples
643.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 298.0ms
ival-hypot: 289.0ms (96.9% of total)
ival-true: 6.0ms (2% of total)
ival-assert: 3.0ms (1% of total)
Bogosity

explain90.0ms (2.1%)

Memory
-0.5MiB live, 158.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1210-1(2.7223499435739672e-278 -7.333591850835943e-159)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-(*.f64 re re)
00-0-re
00-0-(*.f64 im im)
00-0-im
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1090
(+.f64 (*.f64 re re) (*.f64 im im))overflow109
(*.f64 re re)overflow46
(*.f64 im im)overflow81
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue110
(+.f64 (*.f64 re re) (*.f64 im im))underflow11
(*.f64 re re)underflow74
(*.f64 im im)underflow46
Confusion
Predicted +Predicted -
+1201
-0135
Precision
1.0
Recall
0.9917355371900827
Confusion?
Predicted +Predicted MaybePredicted -
+12001
-00135
Precision?
1.0
Recall?
0.9917355371900827
Freqs
test
numberfreq
0136
1120
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
33.0ms512×0valid
Compiler

Compiled 58 to 22 computations (62.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-hypot: 9.0ms (48.5% of total)
ival-mult: 7.0ms (37.7% of total)
ival-add: 2.0ms (10.8% of total)
ival-true: 1.0ms (5.4% of total)
ival-assert: 0.0ms (0% of total)

preprocess16.0ms (0.4%)

Memory
26.0MiB live, 26.0MiB allocated
Algorithm
egg-herbie
Rules
32×sub-neg
30×distribute-lft-neg-in
30×neg-sub0
28×unsub-neg
24×neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01642
13542
27742
314542
420442
521742
621942
068
0108
1118
0113
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 im re)
Symmetry

(abs im)

(abs re)

(sort re im)

Compiler

Compiled 8 to 6 computations (25% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.1%
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 8 to 6 computations (25% saved)

simplify3.0ms (0.1%)

Memory
4.7MiB live, 4.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff-5120
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
cost-diff0
(*.f64 im im)
cost-diff0
(*.f64 re re)
cost-diff128
(+.f64 (*.f64 re re) (*.f64 im im))
Rules
lower-hypot.f32
lower-hypot.f64
lower-fma.f64
lift-*.f64
lower-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0623
01023
11123
01117
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
Outputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 im re)
(+.f64 (*.f64 re re) (*.f64 im im))
(fma.f64 im im (*.f64 re re))
(*.f64 re re)
re
(*.f64 im im)
im

localize26.0ms (0.6%)

Memory
-11.5MiB live, 32.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 re re)
accuracy0
(*.f64 im im)
accuracy0.00390625
(+.f64 (*.f64 re re) (*.f64 im im))
accuracy28.076102734072133
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
20.0ms256×0valid
Compiler

Compiled 25 to 8 computations (68% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 8.0ms (56.3% of total)
ival-hypot: 4.0ms (28.2% of total)
ival-add: 1.0ms (7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.1%)

Memory
7.5MiB live, 7.5MiB allocated
Counts
4 → 72
Calls
Call 1
Inputs
#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())
#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())
#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())
#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())
Outputs
#s(alt (pow im 2) (taylor 0 re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (+.f64 (*.f64 re re) (*.f64 im im)) (patch (+.f64 (*.f64 re re) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) (patch (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
re
@0
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
im
@inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
re
@-inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
im
@0
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))

simplify187.0ms (4.4%)

Memory
0.8MiB live, 191.2MiB allocated
Algorithm
egg-herbie
Rules
18 004×lower-fma.f64
18 004×lower-fma.f32
5 072×lower-*.f64
5 072×lower-*.f32
2 260×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0104620
1296620
2953618
33667584
46426582
08051530
Stop Event
iter limit
node limit
Counts
72 → 68
Calls
Call 1
Inputs
(pow im 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Outputs
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(pow re 2)
(*.f64 re re)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))

rewrite285.0ms (6.7%)

Memory
7.6MiB live, 288.2MiB allocated
Rules
5 720×lower-fma.f64
5 720×lower-fma.f32
4 038×lower-/.f64
4 038×lower-/.f32
3 184×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0621
01021
12921
219621
3178821
0862415
Stop Event
iter limit
node limit
iter limit
Counts
4 → 245
Calls
Call 1
Inputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
(*.f64 im im)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
(*.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (neg.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(*.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (neg.f64 (log.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 im re) (fma.f64 im im (*.f64 re re))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64))))
(*.f64 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 re im) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)))
(*.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (+.f64 im re))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))
(*.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))
(*.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 re re)))
(*.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))
(*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 im im (*.f64 re re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))))
(*.f64 (fma.f64 im im (*.f64 re re)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re)))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (-.f64 (*.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(/.f64 (neg.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (neg.f64 (-.f64 re im)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (neg.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (neg.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))) (neg.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (*.f64 (+.f64 im re) (-.f64 im re)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (-.f64 re im)) (*.f64 (-.f64 re im) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (-.f64 re im) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (-.f64 re im) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (-.f64 re im) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) #s(literal 1 binary64))) (*.f64 (-.f64 re im) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 re im) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (-.f64 re im)) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1 binary64))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 re im)) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 re im)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 1 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (exp.f64 (log.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (exp.f64 (log.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (exp.f64 (log.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (log.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re)) (-.f64 re im))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (neg.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (neg.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (neg.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))) (neg.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))))
(/.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 im re) (-.f64 im re)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re im) (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))) (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))) (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))) (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))
(/.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(neg.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 im re)) (/.f64 re (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (*.f64 re re) (+.f64 im re)) (/.f64 (*.f64 re re) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 re (+.f64 im re)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 re (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 im im (*.f64 re re))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 re (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 re re (*.f64 im im))
(-.f64 (/.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))) (/.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))
(-.f64 (/.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))) (/.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 re #s(literal 8 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (/.f64 (pow.f64 im #s(literal 8 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(-.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))) (/.f64 (pow.f64 im #s(literal 12 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))))
(-.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))) (/.f64 (pow.f64 im #s(literal 12 binary64)) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(-.f64 (/.f64 (/.f64 (pow.f64 re #s(literal 8 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))))
(-.f64 (/.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (/.f64 (pow.f64 im #s(literal 12 binary64)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))))
(-.f64 (/.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (/.f64 (pow.f64 im #s(literal 12 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))))
(-.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (fma.f64 im im (*.f64 re re))))
(+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 re))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(*.f64 im im)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (hypot.f64 im re))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (pow.f64 (pow.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/2 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (hypot.f64 im re))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))))
(*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/2 binary64)))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (fma.f64 im im (*.f64 re re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (hypot.f64 (*.f64 im im) (*.f64 re re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (sqrt.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(hypot.f64 re im)
(exp.f64 (fma.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))

eval67.0ms (1.6%)

Memory
-17.1MiB live, 95.0MiB allocated
Compiler

Compiled 7 655 to 987 computations (87.1% saved)

prune13.0ms (0.3%)

Memory
-10.1MiB live, 33.5MiB allocated
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New3067313
Fresh000
Picked101
Done000
Total3077314
Accuracy
100.0%
Counts
314 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
56.1%
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
55.8%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
93.5%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
6.3%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 82 to 72 computations (12.2% saved)

simplify5.0ms (0.1%)

Memory
11.4MiB live, 11.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
cost-diff-5120
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
cost-diff0
(*.f64 re re)
cost-diff0
(fma.f64 im im (*.f64 re re))
cost-diff0
(*.f64 re re)
cost-diff0
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
cost-diff0
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
cost-diff0
(*.f64 im im)
cost-diff0
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
cost-diff0
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
cost-diff0
(neg.f64 re)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
cost-diff0
(hypot.f64 re im)
Rules
24×lower-+.f64
24×lower-+.f32
12×lower-fma.f32
10×lower-fma.f64
lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01786
02478
12978
23178
33378
43578
53978
64878
75478
85878
05878
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(hypot.f64 re im)
re
im
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
re
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(fma.f64 im im (*.f64 re re))
im
(*.f64 re re)
re
Outputs
(hypot.f64 re im)
(hypot.f64 im re)
re
im
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
re
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(fma.f64 im im (*.f64 re re))
im
(*.f64 re re)
re

localize37.0ms (0.9%)

Memory
9.2MiB live, 83.2MiB allocated
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 im im (*.f64 re re))
accuracy0
(*.f64 re re)
accuracy28.076102734072133
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
accuracy0
(*.f64 re re)
accuracy28.076102734072133
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
accuracy54.431207016542
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
accuracy0
(*.f64 im im)
accuracy0.2542628728639955
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
accuracy28.076102734072133
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
accuracy0
(neg.f64 re)
accuracy62.861571020374654
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
accuracy0
(hypot.f64 re im)
Samples
25.0ms256×0valid
Compiler

Compiled 81 to 11 computations (86.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-hypot: 8.0ms (55.7% of total)
ival-mult: 3.0ms (20.9% of total)
ival-add: 2.0ms (13.9% of total)
ival-neg: 1.0ms (7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.3%)

Memory
-10.1MiB live, 27.4MiB allocated
Counts
11 → 228
Calls
Call 1
Inputs
#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())
#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())
#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())
#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())
#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())
#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())
#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())
#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())
#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())
Outputs
#s(alt im (taylor 0 re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor 0 re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor 0 re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor 0 re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor 0 re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (neg.f64 re) (patch (neg.f64 re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt (hypot.f64 re im) (patch (hypot.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 im im)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 re re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 im im (*.f64 re re)) (patch (fma.f64 im im (*.f64 re re)) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt (sqrt.f64 (fma.f64 im im (*.f64 re re))) (patch (sqrt.f64 (fma.f64 im im (*.f64 re re))) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
((sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im))) (neg re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) (+ (* im im) (* re re)) (sqrt (+ (* im im) (* re re))))
1.0ms
re
@-inf
((sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im))) (neg re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) (+ (* im im) (* re re)) (sqrt (+ (* im im) (* re re))))
1.0ms
im
@-inf
((sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im))) (neg re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) (+ (* im im) (* re re)) (sqrt (+ (* im im) (* re re))))
0.0ms
im
@inf
((sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im))) (neg re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) (+ (* im im) (* re re)) (sqrt (+ (* im im) (* re re))))
0.0ms
re
@0
((sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im))) (neg re) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* re re) (* im im)) (* re re) (+ (* im im) (* re re)) (sqrt (+ (* im im) (* re re))))

simplify273.0ms (6.4%)

Memory
-21.1MiB live, 316.6MiB allocated
Algorithm
egg-herbie
Rules
18 004×lower-fma.f64
18 004×lower-fma.f32
5 072×lower-*.f64
5 072×lower-*.f32
2 260×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01042548
12962548
29562538
336812368
464422358
080672134
Stop Event
iter limit
node limit
Counts
228 → 208
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* -1 re)
(* -1 re)
(* -1 re)
(* -1 re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(pow im 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(pow im 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow im 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 re)
(* -1 re)
(* -1 re)
(* -1 re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -1 re)
(* -1 re)
(* -1 re)
(* -1 re)
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(pow im 2)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 re re (*.f64 im im))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(pow re 2)
(*.f64 re re)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(pow re 2)
(*.f64 re re)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(pow re 2)
(*.f64 re re)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 re re (*.f64 im im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))

rewrite276.0ms (6.4%)

Memory
3.1MiB live, 242.9MiB allocated
Rules
3 958×lower-fma.f32
3 956×lower-fma.f64
3 618×lower-*.f32
3 614×lower-*.f64
2 154×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01776
02468
15868
233868
3336868
0858368
Stop Event
iter limit
node limit
iter limit
Counts
11 → 421
Calls
Call 1
Inputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
(fma.f64 im im (*.f64 re re))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
Outputs
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (hypot.f64 im re))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (hypot.f64 im re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (pow.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (hypot.f64 im re))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (fma.f64 im im (*.f64 re re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 im re)))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))) (hypot.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (hypot.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64))) (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64))) (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(hypot.f64 re im)
(exp.f64 (fma.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(pow.f64 (/.f64 re (*.f64 (neg.f64 re) re)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 re re) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) re)) (neg.f64 re))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 2 binary64))) (-.f64 #s(literal 0 binary64) (neg.f64 re)))
(/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) (neg.f64 re)))))
(/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (*.f64 re re))
(/.f64 (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (*.f64 (neg.f64 re) re))
(/.f64 (*.f64 (neg.f64 re) re) re)
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 re) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re re) (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(neg.f64 re)
(fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 re #s(literal -2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) re #s(literal 0 binary64))
(fma.f64 re #s(literal -1 binary64) #s(literal 0 binary64))
(-.f64 (/.f64 #s(literal 0 binary64) re) re)
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 re re)) re)
(-.f64 #s(literal 0 binary64) re)
(+.f64 #s(literal 0 binary64) (neg.f64 re))
(+.f64 (neg.f64 re) #s(literal 0 binary64))
(*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(exp.f64 (fma.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/2 binary64)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(exp.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))))
(*.f64 im im)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(exp.f64 (fma.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #s(literal 1/2 binary64)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(exp.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))))
(*.f64 re re)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 re))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal 0 binary64)) (-.f64 (*.f64 re re) #s(literal 0 binary64)))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 re #s(literal 6 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 re re)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 0 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 re re) #s(literal 0 binary64)))))
(/.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (*.f64 (neg.f64 re) re))
(fma.f64 re re #s(literal 0 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 re re))
(+.f64 (*.f64 re re) #s(literal 0 binary64))
(*.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (exp.f64 (neg.f64 (log.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(*.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (neg.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(*.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (neg.f64 (log.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))))
(*.f64 (pow.f64 (/.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 im re) (fma.f64 im im (*.f64 re re))) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 im re) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 im re) (fma.f64 im im (*.f64 re re))) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 re im) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 12 binary64)))) (fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 8 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64))))
(*.f64 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 im re) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 re im) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)))
(*.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)))
(*.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (+.f64 im re))
(*.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))
(*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))
(*.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 re re)))
(*.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (/.f64 (fma.f64 im im (*.f64 re re)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (fma.f64 im im (*.f64 re re)) (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(*.f64 (fma.f64 im im (*.f64 re re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))))
(*.f64 (fma.f64 im im (*.f64 re re)) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))))
(*.f64 (fma.f64 im im (*.f64 re re)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))))
(pow.f64 (/.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (exp.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (exp.f64 (log.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (exp.f64 (log.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (exp.f64 (log.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (exp.f64 (log.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (log.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (+.f64 im re)) (-.f64 im re))
(/.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re)) (-.f64 re im))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64))) (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64)))) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))))
(/.f64 (-.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64))) (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64)))) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))
(/.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(neg.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 im im (*.f64 re re)) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (+.f64 im re)) (/.f64 im (-.f64 im re)) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 im im) (+.f64 im re)) (/.f64 (*.f64 im im) (-.f64 im re)) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (/.f64 im (+.f64 im re)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (-.f64 im re)) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 im re)) (/.f64 re (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (*.f64 re re) (+.f64 im re)) (/.f64 (*.f64 re re) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 re (+.f64 im re)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 im (fma.f64 (neg.f64 re) re (*.f64 im im))) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 re (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (*.f64 im im) (/.f64 (*.f64 im im) (fma.f64 (neg.f64 re) re (*.f64 im im))) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 im (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(fma.f64 im im (*.f64 re re))
(fma.f64 re (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 re re (*.f64 im im))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(-.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (fma.f64 im im (*.f64 re re))))
(+.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (neg.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(+.f64 (*.f64 re re) (*.f64 im im))
(+.f64 (*.f64 im im) (*.f64 re re))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64))))) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (hypot.f64 im re))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (hypot.f64 im re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 re re) (fma.f64 im im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(*.f64 (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (pow.f64 (pow.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(*.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (hypot.f64 im re))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (fma.f64 im im (*.f64 re re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 im re)))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 re im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))) (hypot.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (hypot.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64))) (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64))) (/.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 8 binary64))) (pow.f64 im #s(literal 8 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 12 binary64)) (pow.f64 re #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 8 binary64)) (pow.f64 re #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(hypot.f64 re im)
(exp.f64 (fma.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))

eval100.0ms (2.3%)

Memory
22.9MiB live, 224.2MiB allocated
Compiler

Compiled 12 517 to 1 138 computations (90.9% saved)

prune21.0ms (0.5%)

Memory
-25.2MiB live, 57.8MiB allocated
Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New6540654
Fresh022
Picked055
Done000
Total6547661
Accuracy
100.0%
Counts
661 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
56.1%
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
55.8%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
93.5%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
6.3%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 41 to 36 computations (12.2% saved)

simplify5.0ms (0.1%)

Memory
11.0MiB live, 11.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 re re)
cost-diff0
(/.f64 #s(literal 1/2 binary64) im)
cost-diff0
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
cost-diff0
(/.f64 im re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) im)
cost-diff0
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
Rules
84×lower-*.f32
80×lower-*.f64
36×lower-fma.f32
32×*-commutative
32×lower-fma.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01568
02368
13768
25768
37168
47968
58268
08258
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(/.f64 im re)
re
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 re re)
re
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(/.f64 im re)
re
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 re re)
re

localize38.0ms (0.9%)

Memory
1.5MiB live, 77.9MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 #s(literal 1/2 binary64) im)
accuracy0
(*.f64 re re)
accuracy0.05206951694617462
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
accuracy4.1385860312520855
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
accuracy0
(/.f64 im re)
accuracy0
(*.f64 #s(literal 1/2 binary64) im)
accuracy0.12890625
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
accuracy59.97615377128611
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
Samples
30.0ms256×0valid
Compiler

Compiled 54 to 14 computations (74.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 6.0ms (35.3% of total)
ival-hypot: 5.0ms (29.4% of total)
ival-div: 4.0ms (23.5% of total)
ival-add: 2.0ms (11.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series20.0ms (0.5%)

Memory
-7.8MiB live, 29.3MiB allocated
Counts
8 → 156
Calls
Call 1
Inputs
#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())
#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())
#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())
#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())
Outputs
#s(alt im (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor 0 re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor -inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf re) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 re re) (patch (*.f64 re re) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor 0 im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor 0 im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor 0 im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor 0 im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor 0 im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor 0 im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor -inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (patch (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor -inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor -inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor -inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 im) (taylor -inf im) (#s(alt (*.f64 #s(literal 1/2 binary64) im) (patch (*.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (/ im re) (taylor -inf im) (#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) (patch (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 im) (taylor -inf im) (#s(alt (/.f64 #s(literal 1/2 binary64) im) (patch (/.f64 #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
3.0ms
im
@inf
((sqrt (+ (* re re) (* im im))) (+ (* (* 1/2 im) (/ im re)) re) (* 1/2 im) (/ im re) (sqrt (+ (* re re) (* im im))) (+ (* (/ 1/2 im) (* re re)) im) (/ 1/2 im) (* re re))
2.0ms
im
@-inf
((sqrt (+ (* re re) (* im im))) (+ (* (* 1/2 im) (/ im re)) re) (* 1/2 im) (/ im re) (sqrt (+ (* re re) (* im im))) (+ (* (/ 1/2 im) (* re re)) im) (/ 1/2 im) (* re re))
2.0ms
re
@0
((sqrt (+ (* re re) (* im im))) (+ (* (* 1/2 im) (/ im re)) re) (* 1/2 im) (/ im re) (sqrt (+ (* re re) (* im im))) (+ (* (/ 1/2 im) (* re re)) im) (/ 1/2 im) (* re re))
2.0ms
im
@0
((sqrt (+ (* re re) (* im im))) (+ (* (* 1/2 im) (/ im re)) re) (* 1/2 im) (/ im re) (sqrt (+ (* re re) (* im im))) (+ (* (/ 1/2 im) (* re re)) im) (/ 1/2 im) (* re re))
1.0ms
re
@-inf
((sqrt (+ (* re re) (* im im))) (+ (* (* 1/2 im) (/ im re)) re) (* 1/2 im) (/ im re) (sqrt (+ (* re re) (* im im))) (+ (* (/ 1/2 im) (* re re)) im) (/ 1/2 im) (* re re))

simplify224.0ms (5.2%)

Memory
18.4MiB live, 252.4MiB allocated
Algorithm
egg-herbie
Rules
18 896×lower-fma.f64
18 896×lower-fma.f32
4 560×lower-*.f64
4 560×lower-*.f32
2 412×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231432
13291432
210441428
339281300
474061300
084041200
Stop Event
iter limit
node limit
Counts
156 → 142
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/ im re)
(/ im re)
(/ im re)
(/ im re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) im)))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(/ im re)
(/ im re)
(/ im re)
(/ im re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
re
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(/ im re)
(/ im re)
(/ im re)
(/ im re)
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(/ im re)
(/ im re)
(/ im re)
(/ im re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* 1/2 (/ (pow re 2) im))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* 1/2 (/ (pow im 2) re))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(/ im re)
(/ im re)
(/ im re)
(/ im re)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* 1/2 (/ (pow im 2) re))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(* 1/2 im)
(/ im re)
(/ im re)
(/ im re)
(/ im re)
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
(/ 1/2 im)
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(neg.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
re
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(neg.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(neg.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(/ im re)
(/.f64 im re)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(neg.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)

rewrite217.0ms (5.1%)

Memory
-23.5MiB live, 267.0MiB allocated
Rules
9 152×lower-fma.f32
9 148×lower-fma.f64
5 678×lower-*.f32
5 674×lower-*.f64
3 360×lower-/.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01562
02362
19162
264762
0818252
Stop Event
iter limit
node limit
iter limit
Counts
8 → 239
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(*.f64 #s(literal 1/2 binary64) im)
(/.f64 im re)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/.f64 #s(literal 1/2 binary64) im)
(*.f64 re re)
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64)) (pow.f64 (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re) #s(literal 2 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re) (-.f64 (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re) (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)))
(*.f64 (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)))))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) (/.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re))))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) #s(literal -1 binary64))))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (*.f64 re re) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) #s(literal -1 binary64))) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 9 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) #s(literal 1 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))) (*.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))) (fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (fma.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))))
(/.f64 (neg.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64))))) (neg.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)))) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 re re) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64))) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (*.f64 re re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re))))
(/.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)))) (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (*.f64 re re) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 9 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) re)))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (/.f64 im re) re)
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (neg.f64 re)) (neg.f64 im) re)
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) re)
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) im) (/.f64 (/.f64 im re) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) (/.f64 (*.f64 (/.f64 im re) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im re)
(fma.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (/.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (/.f64 #s(literal -1 binary64) re) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) (pow.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) re)
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) re)
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (neg.f64 im) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (neg.f64 re)) re)
(fma.f64 (neg.f64 im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 #s(literal 1/2 binary64) im)) re)
(fma.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) (/.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (/.f64 im re) (/.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (/.f64 im re) (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 im re) im) re)
(fma.f64 (*.f64 im im) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 im (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) re)
(fma.f64 re #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(-.f64 (/.f64 (*.f64 re re) (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))))
(-.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(+.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(+.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) re)
(+.f64 re (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
(*.f64 (pow.f64 (/.f64 re im) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 im))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) re))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) im)
(*.f64 #s(literal 1 binary64) (/.f64 im re))
(*.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im re) #s(literal 1 binary64))
(*.f64 im (pow.f64 re #s(literal -1 binary64)))
(pow.f64 (/.f64 re im) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)) (neg.f64 re))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im))
(/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re im))
(/.f64 (neg.f64 im) (neg.f64 re))
(/.f64 im re)
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 re im)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.f64 im) re)))
(neg.f64 (/.f64 (neg.f64 im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 re)) (/.f64 (neg.f64 im) re))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re im)) #s(literal -1 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64)) (pow.f64 (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im) #s(literal 2 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)))) (fma.f64 (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im) (-.f64 (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(*.f64 (-.f64 (*.f64 im im) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im))))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)))
(*.f64 (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) #s(literal -1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)))))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) (/.f64 (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im))))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) (*.f64 (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) #s(literal -1 binary64))))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im) (/.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))
(*.f64 (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im) (*.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))) (fma.f64 (*.f64 im im) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) #s(literal -1 binary64))) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 9 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) im) #s(literal 3 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))) (*.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (fma.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) im) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (*.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (*.f64 im im))) (*.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)) (fma.f64 (*.f64 im im) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im im)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (-.f64 (*.f64 im im) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)))) (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)))
(/.f64 (+.f64 (pow.f64 im #s(literal 9 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 9 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) im) #s(literal 3 binary64))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) (-.f64 (*.f64 im im) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im)) im)))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 (/.f64 (*.f64 re re) (neg.f64 im)) #s(literal -1/2 binary64) im)
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 im (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (neg.f64 im) im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (pow.f64 im #s(literal 1/2 binary64)) (pow.f64 im #s(literal 1/2 binary64)) (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)))
(fma.f64 (/.f64 (*.f64 re re) #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) im) im)
(fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (pow.f64 im #s(literal -1 binary64)) im)
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
(fma.f64 (*.f64 (pow.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) re) (/.f64 re (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (/.f64 (/.f64 #s(literal 1/2 binary64) im) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re im) im)
(fma.f64 (pow.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) (/.f64 #s(literal -1 binary64) im) im)
(fma.f64 #s(literal -1 binary64) (neg.f64 im) (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (pow.f64 im #s(literal -1 binary64)) im)
(fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re im)
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (*.f64 re re) #s(literal 2 binary64)) im)
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) im)
(fma.f64 (/.f64 re im) (/.f64 re #s(literal 2 binary64)) im)
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) im)
(fma.f64 #s(literal 1 binary64) im (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) (neg.f64 im)) im)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal -1 binary64) im) (*.f64 re re)) im)
(fma.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) (/.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 re re) (/.f64 (pow.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im)
(fma.f64 im #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)))
(fma.f64 re (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) im)
(-.f64 (/.f64 (*.f64 im im) (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im))) (/.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64))) (+.f64 im (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 re re)) im))))
(-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(+.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) (neg.f64 im)))) (neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(+.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)) im)
(+.f64 im (*.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1/2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1/2 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1/2 binary64) im))
(*.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal -1 binary64)))
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (*.f64 im #s(literal -2 binary64)))
(/.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) im))
(/.f64 #s(literal -1/2 binary64) (neg.f64 im))
(/.f64 #s(literal 1/2 binary64) im)
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) im)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1/2 binary64) im)))
(neg.f64 (/.f64 #s(literal -1/2 binary64) im))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1/2 binary64) im))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal -1 binary64)))
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 #s(literal 1 binary64) (*.f64 re re))
(*.f64 (*.f64 re re) #s(literal 1 binary64))
(*.f64 re re)
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))

eval46.0ms (1.1%)

Memory
4.7MiB live, 117.7MiB allocated
Compiler

Compiled 8 119 to 942 computations (88.4% saved)

prune11.0ms (0.2%)

Memory
36.3MiB live, 36.3MiB allocated
Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New3801381
Fresh000
Picked202
Done145
Total3835388
Accuracy
100.0%
Counts
388 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.1%
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
55.8%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
99.9%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 29 to 26 computations (10.3% saved)

simplify7.0ms (0.2%)

Memory
-37.6MiB live, 8.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 re im)
cost-diff0
(*.f64 (/.f64 re im) re)
cost-diff0
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
Rules
44×lower-*.f32
42×lower-*.f64
20×lower-fma.f32
18×lower-fma.f64
14×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01136
01536
12236
23536
34136
44436
54736
04731
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
(*.f64 (/.f64 re im) re)
(/.f64 re im)
re
im
#s(literal 1/2 binary64)
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im)
(*.f64 (/.f64 re im) re)
(/.f64 re im)
re
im
#s(literal 1/2 binary64)

localize25.0ms (0.6%)

Memory
15.6MiB live, 53.6MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
accuracy0
(/.f64 re im)
accuracy0.05206951694617462
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
accuracy0.12109375
(*.f64 (/.f64 re im) re)
Samples
19.0ms256×0valid
Compiler

Compiled 30 to 10 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 5.0ms (40.4% of total)
ival-hypot: 4.0ms (32.4% of total)
ival-div: 2.0ms (16.2% of total)
ival-add: 1.0ms (8.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.2%)

Memory
-16.7MiB live, 21.3MiB allocated
Counts
4 → 96
Calls
Call 1
Inputs
#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())
#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())
#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())
Outputs
#s(alt im (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf re) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf re) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor 0 im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor 0 im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) (patch (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) im) (taylor -inf im) (#s(alt (*.f64 (/.f64 re im) re) (patch (*.f64 (/.f64 re im) re) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
#s(alt (/ re im) (taylor -inf im) (#s(alt (/.f64 re im) (patch (/.f64 re im) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
((sqrt (+ (* re re) (* im im))) (+ (* (* (/ re im) re) 1/2) im) (* (/ re im) re) (/ re im))
1.0ms
re
@-inf
((sqrt (+ (* re re) (* im im))) (+ (* (* (/ re im) re) 1/2) im) (* (/ re im) re) (/ re im))
1.0ms
re
@inf
((sqrt (+ (* re re) (* im im))) (+ (* (* (/ re im) re) 1/2) im) (* (/ re im) re) (/ re im))
1.0ms
im
@0
((sqrt (+ (* re re) (* im im))) (+ (* (* (/ re im) re) 1/2) im) (* (/ re im) re) (/ re im))
1.0ms
re
@0
((sqrt (+ (* re re) (* im im))) (+ (* (* (/ re im) re) 1/2) im) (* (/ re im) re) (/ re im))

simplify258.0ms (6%)

Memory
18.7MiB live, 297.4MiB allocated
Algorithm
egg-herbie
Rules
17 774×lower-fma.f64
17 774×lower-fma.f32
4 270×lower-*.f64
4 270×lower-*.f32
2 472×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0111788
1302788
2977786
33647750
47514750
08243700
Stop Event
iter limit
node limit
Counts
96 → 89
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) im)))
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* 1/2 (/ (pow re 2) im))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ (pow re 2) im)
(/ re im)
(/ re im)
(/ re im)
(/ re im)
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) im))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (/.f64 re (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) re))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 im)))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)
(/ re im)
(/.f64 re im)

rewrite144.0ms (3.4%)

Memory
6.8MiB live, 202.5MiB allocated
Rules
6 318×lower-fma.f32
6 316×lower-fma.f64
4 028×lower-*.f32
4 026×lower-*.f64
2 024×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01133
01533
15833
241833
3480433
0821228
Stop Event
iter limit
node limit
iter limit
Counts
4 → 158
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
(*.f64 (/.f64 re im) re)
(/.f64 re im)
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im))
(*.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 4 binary64)) (pow.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))))
(*.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 6 binary64)) #s(literal 1/64 binary64) (pow.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)) (-.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))))))
(*.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im))
(*.f64 (fma.f64 im im (*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)))) (pow.f64 (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) #s(literal -1 binary64)) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))) (pow.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64)))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(*.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im))
(*.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))))
(*.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (pow.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) #s(literal -1 binary64))))
(*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))))
(pow.f64 (/.f64 (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re))) (fma.f64 im im (*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))) (fma.f64 im im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) #s(literal -1 binary64))) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))
(/.f64 (*.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (pow.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) #s(literal -1 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 6 binary64)) #s(literal 1/64 binary64) (-.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 3 binary64))))))
(/.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 2 binary64)) (pow.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 2 binary64))) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 3 binary64)) (pow.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))))
(/.f64 (neg.f64 (fma.f64 im im (*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64))))) (neg.f64 (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (fma.f64 im im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))))
(/.f64 (*.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 6 binary64)) #s(literal 1/64 binary64) (-.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 3 binary64))))) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) (*.f64 im im))) (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) (fma.f64 im im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 4 binary64)) #s(literal 1/16 binary64) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (fma.f64 im im (*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)))) (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re))))
(/.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 9 binary64)) (pow.f64 im #s(literal 9 binary64))) (*.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))) (fma.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 6 binary64)) #s(literal 1/64 binary64) (-.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 3 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64))))
(/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re))) (fma.f64 im im (*.f64 #s(literal -1/4 binary64) (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im)))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)))
(neg.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (neg.f64 (fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal 1 binary64)) (*.f64 im im))))))
(fma.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) (/.f64 re im) im)
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) (neg.f64 im)) (neg.f64 re) im)
(fma.f64 (sqrt.f64 im) (sqrt.f64 im) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))
(fma.f64 (/.f64 (neg.f64 re) #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) im)
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re im) im)
(fma.f64 (*.f64 (*.f64 (neg.f64 re) re) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) im) im)
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) (pow.f64 im #s(literal -1 binary64)) im)
(fma.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/2 binary64)) (/.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 re im) re)) (/.f64 (*.f64 (/.f64 re im) re) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) re im)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) (/.f64 (*.f64 #s(literal 1/2 binary64) re) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 #s(literal -1 binary64) (neg.f64 im) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal 1/2 binary64) re) (pow.f64 re #s(literal -1 binary64))) im)
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 re re)) im)
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) im)
(fma.f64 #s(literal 1 binary64) im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))
(fma.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) im)) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (neg.f64 re) (/.f64 (*.f64 #s(literal 1/2 binary64) re) (neg.f64 im)) im)
(fma.f64 (neg.f64 re) (*.f64 (/.f64 #s(literal -1 binary64) im) (*.f64 #s(literal 1/2 binary64) re)) im)
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) (/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) #s(literal 1/2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im)
(fma.f64 (*.f64 (/.f64 re im) re) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 re im) re)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im)
(fma.f64 (/.f64 re im) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 re im) re)) re) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(fma.f64 (/.f64 re im) (*.f64 #s(literal 1/2 binary64) re) im)
(fma.f64 im #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 (*.f64 re re) (*.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 1/2 binary64)) im)
(fma.f64 re (*.f64 #s(literal 1/2 binary64) (/.f64 re im)) im)
(-.f64 (/.f64 (*.f64 im im) (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))) (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) #s(literal 2 binary64)) (-.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))))
(-.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) im) #s(literal -1 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 (pow.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64)) (/.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im)))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re) (neg.f64 im))))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)) im)
(+.f64 im (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 re im) re)))
(*.f64 (/.f64 re #s(literal 1 binary64)) (/.f64 re im))
(*.f64 (/.f64 re #s(literal -1 binary64)) (/.f64 (neg.f64 re) im))
(*.f64 (/.f64 (neg.f64 re) #s(literal -1 binary64)) (/.f64 re im))
(*.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 re) im) (neg.f64 re))
(*.f64 (*.f64 (neg.f64 re) re) (/.f64 #s(literal -1 binary64) im))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 re re))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) re))
(*.f64 (neg.f64 re) (*.f64 (/.f64 #s(literal -1 binary64) im) re))
(*.f64 (neg.f64 re) (/.f64 (neg.f64 re) im))
(*.f64 (/.f64 re im) re)
(*.f64 (*.f64 re re) (pow.f64 im #s(literal -1 binary64)))
(*.f64 re (/.f64 re im))
(pow.f64 (/.f64 (/.f64 (/.f64 im re) re) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 im re) re) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 re) re) #s(literal -1 binary64)) im)
(/.f64 (*.f64 (*.f64 re re) #s(literal -1 binary64)) (neg.f64 im))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) re)) im)
(/.f64 (*.f64 (*.f64 re re) #s(literal 1 binary64)) im)
(/.f64 (*.f64 (neg.f64 re) re) (neg.f64 im))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 im re) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 im re) re) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 im re) re))
(/.f64 (neg.f64 re) (/.f64 (neg.f64 im) re))
(/.f64 (/.f64 re im) (pow.f64 re #s(literal -1 binary64)))
(/.f64 (*.f64 re re) im)
(/.f64 re (/.f64 im re))
(neg.f64 (/.f64 (*.f64 (neg.f64 re) re) im))
(neg.f64 (/.f64 (*.f64 re re) (neg.f64 im)))
(neg.f64 (*.f64 re (/.f64 (neg.f64 re) im)))
(neg.f64 (*.f64 (/.f64 (neg.f64 re) im) re))
(exp.f64 (fma.f64 (log.f64 im) #s(literal -1 binary64) (*.f64 (log.f64 re) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 (/.f64 im re)) #s(literal -1 binary64) (*.f64 (log.f64 re) #s(literal 1 binary64))))
(exp.f64 (fma.f64 (log.f64 re) #s(literal 2 binary64) (*.f64 (log.f64 im) #s(literal -1 binary64))))
(exp.f64 (fma.f64 (log.f64 re) #s(literal 1 binary64) (*.f64 (log.f64 (/.f64 im re)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 im re) re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 im re) #s(literal -1/2 binary64)) (pow.f64 (/.f64 im re) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 re)) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 #s(literal -1 binary64) im) (neg.f64 re))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im))
(*.f64 (pow.f64 im #s(literal -1 binary64)) re)
(*.f64 #s(literal 1 binary64) (/.f64 re im))
(*.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 re im) #s(literal 1 binary64))
(*.f64 re (pow.f64 im #s(literal -1 binary64)))
(pow.f64 (pow.f64 (/.f64 im re) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (/.f64 im re) #s(literal -1 binary64))
(pow.f64 (/.f64 re im) #s(literal 1 binary64))
(/.f64 (/.f64 (neg.f64 re) #s(literal -1 binary64)) im)
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 re)) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 re) #s(literal 1 binary64)) (neg.f64 im))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) re))
(/.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 im re))
(/.f64 (neg.f64 re) (neg.f64 im))
(/.f64 re im)
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 im re)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.f64 re) im)))
(neg.f64 (/.f64 (neg.f64 re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 im)) (/.f64 (neg.f64 re) im))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im))
(exp.f64 (fma.f64 (log.f64 im) #s(literal -1 binary64) (*.f64 (log.f64 re) #s(literal 1 binary64))))
(exp.f64 (fma.f64 (log.f64 re) #s(literal 1 binary64) (*.f64 (log.f64 im) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 im re)) #s(literal -1 binary64)))

eval31.0ms (0.7%)

Memory
-18.0MiB live, 65.3MiB allocated
Compiler

Compiled 4 608 to 704 computations (84.7% saved)

prune11.0ms (0.3%)

Memory
29.0MiB live, 29.0MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New2470247
Fresh000
Picked011
Done044
Total2475252
Accuracy
100.0%
Counts
252 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.1%
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
55.8%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
99.9%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 87 to 53 computations (39.1% saved)

regimes34.0ms (0.8%)

Memory
-28.0MiB live, 89.4MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 re im)
Outputs
(hypot.f64 re im)
Calls

6 calls:

7.0ms
re
6.0ms
im
6.0ms
(*.f64 im im)
6.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
5.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
100.0%1(+.f64 (*.f64 re re) (*.f64 im im))
100.0%1(*.f64 re re)
100.0%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes31.0ms (0.7%)

Memory
8.6MiB live, 89.3MiB allocated
Counts
8 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
Calls

6 calls:

6.0ms
re
6.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
6.0ms
im
5.0ms
(*.f64 im im)
5.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Results
AccuracySegmentsBranch
99.9%1re
99.9%1im
99.9%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
99.9%1(+.f64 (*.f64 re re) (*.f64 im im))
99.9%1(*.f64 re re)
99.9%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes27.0ms (0.6%)

Memory
-1.9MiB live, 76.0MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
Outputs
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
Calls

6 calls:

6.0ms
re
5.0ms
im
4.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
4.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
4.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
56.1%1re
56.1%1im
56.1%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
56.1%1(+.f64 (*.f64 re re) (*.f64 im im))
56.1%1(*.f64 re re)
56.1%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes50.0ms (1.2%)

Memory
-0.8MiB live, 80.7MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
Outputs
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
Calls

6 calls:

27.0ms
im
11.0ms
re
3.0ms
(*.f64 im im)
3.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
3.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Results
AccuracySegmentsBranch
55.8%1(*.f64 re re)
55.8%1re
55.8%1im
55.8%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
55.8%1(+.f64 (*.f64 re re) (*.f64 im im))
55.8%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes19.0ms (0.4%)

Memory
7.1MiB live, 46.1MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Calls

6 calls:

6.0ms
im
3.0ms
re
2.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
2.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
2.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
1.8%1re
1.8%1im
1.8%1(*.f64 re re)
1.8%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.8%1(+.f64 (*.f64 re re) (*.f64 im im))
1.8%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

simplify23.0ms (0.5%)

Memory
19.7MiB live, 59.3MiB allocated
Algorithm
egg-herbie
Rules
*-commutative-binary64-*.f64
neg-sub0-binary64--.f64-neg.f64
+-commutative-binary64-+.f64
neg-mul-1-binary64-*.f64-neg.f64
sub-neg-binary64-neg.f64-+.f64--.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02050
12550
22750
32850
Stop Event
saturated
Calls
Call 1
Inputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Outputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1/2 binary64) im))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))

soundness618.0ms (14.4%)

Memory
-7.9MiB live, 452.9MiB allocated
Rules
18 004×lower-fma.f64
18 004×lower-fma.f32
9 152×lower-fma.f32
9 148×lower-fma.f64
5 720×lower-fma.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01562
02362
19162
264762
0818252
0104620
1296620
2953618
33667584
46426582
08051530
0621
01021
12921
219621
3178821
0862415
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 76 to 51 computations (32.9% saved)

preprocess65.0ms (1.5%)

Memory
7.0MiB live, 173.5MiB allocated
Remove

(sort re im)

(abs re)

(abs im)

Compiler

Compiled 88 to 62 computations (29.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...