math.abs on complex

Time bar (total: 5.6s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB 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)

sample700.0ms (12.5%)

Memory
16.4MiB live, 960.0MiB allocated
Samples
504.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 216.0ms
ival-hypot: 206.0ms (95.6% of total)
ival-true: 6.0ms (2.8% of total)
ival-assert: 3.0ms (1.4% of total)
Bogosity

explain124.0ms (2.2%)

Memory
4.8MiB live, 167.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1280-2(-5.2479300994778304e-161 -5.006224485543276e-242)(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-rescue1120
(+.f64 (*.f64 re re) (*.f64 im im))overflow112
(*.f64 re re)overflow71
(*.f64 im im)overflow63
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue140
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 re re)underflow60
(*.f64 im im)underflow60
Confusion
Predicted +Predicted -
+1262
-0128
Precision
1.0
Recall
0.984375
Confusion?
Predicted +Predicted MaybePredicted -
+12602
-00128
Precision?
1.0
Recall?
0.984375
Freqs
test
numberfreq
0130
1126
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
35.0ms512×0valid
Compiler

Compiled 81 to 28 computations (65.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-hypot: 10.0ms (51.3% of total)
ival-mult: 7.0ms (35.9% of total)
ival-add: 3.0ms (15.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess23.0ms (0.4%)

Memory
-19.1MiB live, 32.5MiB allocated
Algorithm
egg-herbie
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
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
53.8%
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 8 to 6 computations (25% saved)

simplify3.0ms (0.1%)

Memory
3.6MiB live, 3.6MiB 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))
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

localize25.0ms (0.4%)

Memory
13.2MiB live, 50.0MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 (*.f64 re re) (*.f64 im im))
accuracy0
(*.f64 re re)
accuracy0
(*.f64 im im)
accuracy29.571877910744718
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
20.0ms256×0valid
Compiler

Compiled 48 to 14 computations (70.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-hypot: 5.0ms (51% of total)
ival-mult: 3.0ms (30.6% of total)
ival-add: 1.0ms (10.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series8.0ms (0.1%)

Memory
-12.6MiB live, 25.0MiB 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
2.0ms
im
@0
((+ (* 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
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))))

simplify285.0ms (5.1%)

Memory
23.5MiB live, 296.9MiB allocated
Algorithm
egg-herbie
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))

rewrite257.0ms (4.6%)

Memory
-29.6MiB live, 297.3MiB allocated
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
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval36.0ms (0.6%)

Memory
28.0MiB live, 102.9MiB allocated
Compiler

Compiled 7 655 to 987 computations (87.1% saved)

prune12.0ms (0.2%)

Memory
-9.1MiB live, 37.4MiB allocated
Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New3058313
Fresh000
Picked101
Done000
Total3068314
Accuracy
100.0%
Counts
314 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
53.4%
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
53.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
53.4%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
91.6%
#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 114 to 90 computations (21.1% saved)

simplify68.0ms (1.2%)

Memory
-2.8MiB live, 36.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 im im (*.f64 re re))
cost-diff0
(/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))
cost-diff0
(sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)))
cost-diff0
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
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))
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
(neg.f64 re)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
cost-diff0
(hypot.f64 re im)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023125
037123
152123
264123
370123
475123
582123
6103123
7169123
8280123
9605123
10992123
111359123
121574123
132139123
142211123
152228123
162256123
172276123
02276123
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 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
re
#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
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))
(fma.f64 im im (*.f64 re re))
im
(*.f64 re re)
re
(+.f64 im re)
(sqrt.f64 (+.f64 im 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 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re 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 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
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (+.f64 im re)) (sqrt.f64 (/.f64 (fma.f64 re re (*.f64 im im)) (+.f64 im re))))
(sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)))
(sqrt.f64 (/.f64 (fma.f64 re re (*.f64 im im)) (+.f64 im re)))
(/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))
(/.f64 (fma.f64 re re (*.f64 im im)) (+.f64 im re))
(fma.f64 im im (*.f64 re re))
(fma.f64 re re (*.f64 im im))
im
(*.f64 re re)
re
(+.f64 im re)
(sqrt.f64 (+.f64 im re))

localize146.0ms (2.6%)

Memory
-2.6MiB live, 74.7MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)))
accuracy0
(sqrt.f64 (+.f64 im re))
accuracy0.48046875
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
accuracy29.61873578576289
(/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))
accuracy0
(/.f64 im re)
accuracy0
(*.f64 #s(literal 1/2 binary64) im)
accuracy0.1484375
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
accuracy59.95738478630513
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
accuracy0
(*.f64 re re)
accuracy29.571877910744718
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
accuracy52.72070576867854
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
accuracy0
(neg.f64 re)
accuracy62.862352722418045
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
accuracy0
(hypot.f64 re im)
Samples
130.0ms256×0valid
Compiler

Compiled 232 to 39 computations (83.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 118.0ms
ival-neg: 93.0ms (78.9% of total)
ival-mult: 7.0ms (5.9% of total)
ival-add: 5.0ms (4.2% of total)
ival-hypot: 5.0ms (4.2% of total)
ival-div: 3.0ms (2.5% of total)
ival-sqrt: 3.0ms (2.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series53.0ms (0.9%)

Memory
-5.8MiB live, 37.3MiB allocated
Counts
15 → 324
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 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 #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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())
#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())
#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor 0 re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3))))))))) (taylor 0 re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* -1 re)) (taylor 0 re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* 2 (/ re im)) 1))) (taylor 0 re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1))) (taylor 0 re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (sqrt im) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re))))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))) (taylor inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))) (taylor inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* -1 (/ im re)))) (taylor inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re)))) (taylor inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re)))) (taylor inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (sqrt re) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 (* -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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt re (taylor -inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (/ im re) 1))) (taylor -inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1))) (taylor -inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1))) (taylor -inf re) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor 0 im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3))))))))) (taylor 0 im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* -1 im)) (taylor 0 im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* im (- (* 2 (/ im re)) 1))) (taylor 0 im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1))) (taylor 0 im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (sqrt re) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re)))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5)))))))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))) (taylor inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))) (taylor inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* -1 (/ re im)))) (taylor inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im)))) (taylor inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im)))) (taylor inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im 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 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 (* -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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (patch (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (/ re im) 1))) (taylor -inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1))) (taylor -inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1))) (taylor -inf im) (#s(alt (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (patch (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im 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 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify189.0ms (3.4%)

Memory
14.9MiB live, 241.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04584431
114514295
248734209
081303894
Stop Event
iter limit
node limit
Counts
324 → 295
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))
(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)))))
(* 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)))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
im
(+ im (* -1 re))
(+ im (* re (- (* 2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1)))
(pow im 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) 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)))))))
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))))
(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)))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
re
(* re (+ 1 (* -1 (/ im re))))
(* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(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))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
(* -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))))
(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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
re
(* -1 (* re (- (/ im re) 1)))
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1)))
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1)))
(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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 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))
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)))))
(sqrt re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
re
(+ re (* -1 im))
(+ re (* im (- (* 2 (/ im re)) 1)))
(+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1)))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(sqrt re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
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))))
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)))))))
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
im
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(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))))
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) 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))))))))
(* -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))))
(* -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))))))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
im
(* -1 (* im (- (/ re im) 1)))
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1)))
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1)))
(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 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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)
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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 re #s(literal 7/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 7/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)
(+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (/.f64 re im) im) #s(literal -2 binary64) (/.f64 #s(literal 2 binary64) im)) re #s(literal -1 binary64)) 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))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* -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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) re) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
re
(* re (+ 1 (* -1 (/ im re))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)
(* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) re) im) re) #s(literal 1 binary64)) re)
(* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -2 binary64) im) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal 3 binary64))))) re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
(*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re 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))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
re
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)))
(/ 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))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 re) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 re) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
re
(* -1 (* re (- (/ im re) 1)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1)))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) re) im) re) #s(literal 1 binary64)) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1)))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 im (+.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -2 binary64) im) im)) re) im) re) #s(literal 1 binary64)) re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) 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 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 7/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
re
(+ re (* -1 im))
(-.f64 re im)
(+ re (* im (- (* 2 (/ im re)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) re) im #s(literal -1 binary64)) im re)
(+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (/.f64 im re) re) #s(literal -2 binary64) (/.f64 #s(literal 2 binary64) re)) im #s(literal -1 binary64)) 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))
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im)
(* 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))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) im)) im) im)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) im)) im) im)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) 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 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)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
im
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) im) (fma.f64 (/.f64 (*.f64 re re) im) #s(literal -2 binary64) re) #s(literal 1 binary64)) im)
(* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) im) (fma.f64 (/.f64 (*.f64 re re) im) #s(literal -2 binary64) re) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64))) (pow.f64 im #s(literal 3 binary64))))) im)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(*.f64 (fma.f64 re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) #s(literal 1/16 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im))
(* 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))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) im)) im) im)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) im)) im) im)
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (/.f64 re im) 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 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))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64)))) im im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) im) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 im))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))
im
(* -1 (* im (- (/ re im) 1)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1)))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) im) (fma.f64 (/.f64 (*.f64 re re) im) #s(literal -2 binary64) re) #s(literal 1 binary64)) im)
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1)))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 re (+.f64 (fma.f64 (/.f64 (*.f64 re re) im) #s(literal -2 binary64) re) re)) im) re) im) #s(literal 1 binary64)) im)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))))

rewrite258.0ms (4.6%)

Memory
3.0MiB live, 260.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023110
03792
111892
283292
0874992
Stop Event
iter limit
node limit
iter limit
Counts
15 → 758
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 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
#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)
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)))
(/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))
(fma.f64 im im (*.f64 re re))
(sqrt.f64 (+.f64 im re))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval176.0ms (3.1%)

Memory
1.5MiB live, 261.5MiB allocated
Compiler

Compiled 25 780 to 3 153 computations (87.8% saved)

prune32.0ms (0.6%)

Memory
-2.8MiB live, 82.2MiB allocated
Pruning

12 alts after pruning (9 fresh and 3 done)

PrunedKeptTotal
New1 06471 071
Fresh123
Picked235
Done000
Total1 067121 079
Accuracy
100.0%
Counts
1 079 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
98.0%
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
97.6%
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (-.f64 im re))) (sqrt.f64 (+.f64 im re)))
97.0%
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
53.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
24.7%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
53.4%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
91.6%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
99.1%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
6.3%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 193 to 152 computations (21.2% saved)

simplify173.0ms (3.1%)

Memory
-17.4MiB live, 151.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))
cost-diff0
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
cost-diff704
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
cost-diff1024
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
cost-diff0
(sqrt.f64 (+.f64 im re))
cost-diff0
(sqrt.f64 im)
cost-diff0
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
cost-diff0
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
cost-diff0
(/.f64 im re)
cost-diff0
(*.f64 (/.f64 im re) im)
cost-diff0
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
cost-diff0
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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
(*.f64 re (/.f64 (/.f64 re im) im))
cost-diff0
(fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))
cost-diff0
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
cost-diff1024
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037257
058257
185257
2136257
3256257
4692233
51302233
61593233
72005233
82543233
93048233
103642233
115886233
127275233
137488233
08327215
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))
(*.f64 re (/.f64 (/.f64 re im) im))
re
(/.f64 (/.f64 re im) im)
(/.f64 re im)
im
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
#s(literal 1/2 binary64)
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
im
(sqrt.f64 (+.f64 im re))
(+.f64 im re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
#s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(/.f64 im re)
im
re
#s(literal 1 binary64)
Outputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 re im) im) re) #s(literal 1 binary64))
(*.f64 re (/.f64 (/.f64 re im) im))
(*.f64 (/.f64 (/.f64 re im) im) re)
re
(/.f64 (/.f64 re im) im)
(/.f64 re im)
im
#s(literal 1/2 binary64)
#s(literal 1 binary64)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
#s(literal 1/2 binary64)
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (+.f64 im re)) #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
im
(sqrt.f64 (+.f64 im re))
(+.f64 im re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 im im (*.f64 re re))))
#s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))
#s(approx (+ (* re re) (* im im)) (fma.f64 im im (*.f64 re re)))
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(fma.f64 im im (*.f64 re re))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(fma.f64 (/.f64 im re) im re)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(/.f64 im re)
im
re
#s(literal 1 binary64)

localize84.0ms (1.5%)

Memory
6.6MiB live, 167.1MiB allocated
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.22265625
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
accuracy8.911749527030427
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
accuracy9.17748249654811
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
accuracy29.571877910744718
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
accuracy0
(sqrt.f64 (+.f64 im re))
accuracy0
(sqrt.f64 im)
accuracy0.48046875
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
accuracy1.4583568775701117
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
accuracy0
(/.f64 im re)
accuracy0.00390625
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
accuracy0.15234375
(*.f64 (/.f64 im re) im)
accuracy59.95738478630513
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re))
accuracy0
(*.f64 im im)
accuracy0.24743501019429387
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
accuracy29.571877910744718
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
accuracy0.01171875
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
accuracy0.15234375
(/.f64 (/.f64 re im) im)
accuracy0.5855965684293705
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
accuracy4.826226577003836
(*.f64 re (/.f64 (/.f64 re im) im))
Samples
64.0ms256×0valid
Compiler

Compiled 383 to 58 computations (84.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 49.0ms
ival-mult: 22.0ms (45% of total)
ival-div: 9.0ms (18.4% of total)
ival-add: 7.0ms (14.3% of total)
ival-hypot: 5.0ms (10.2% of total)
ival-sqrt: 5.0ms (10.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series35.0ms (0.6%)

Memory
19.3MiB live, 56.7MiB allocated
Counts
21 → 480
Calls
Call 1
Inputs
#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())
#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())
#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())
#s(alt (/.f64 im re) (patch (/.f64 im re) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())
#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())
#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())
#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())
#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())
#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())
#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt im (taylor 0 re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow im 2)) (pow re 2)) re) (taylor 0 re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3))))))))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re))))))) (taylor 0 re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) re) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) re) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) re) (taylor 0 re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (pow im 2) (pow re 2)) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))) (taylor inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf re) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf re) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))) (taylor -inf re) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt re (taylor -inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1))) (taylor -inf re) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf re) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor -inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor 0 im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor 0 im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3))))))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re)))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5)))))))))) (taylor 0 im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (+ re (/ (pow im 2) re)) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (+ re (/ (pow im 2) re)) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (+ re (/ (pow im 2) re)) (taylor 0 im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor 0 im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (/ (pow im 2) (pow re 2))) (taylor 0 im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))) (taylor inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) (pow re 2)) (taylor inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) (patch (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor -inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) (patch (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<representation binary64>) () ())) ())
#s(alt (/ (pow re 2) (pow im 2)) (taylor -inf im) (#s(alt (*.f64 re (/.f64 (/.f64 re im) im)) (patch (*.f64 re (/.f64 (/.f64 re im) im)) #<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 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) 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 (/.f64 im re) im) #s(literal 1/2 binary64) re)) (patch #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow im 2) re)) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) (patch (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf im) (#s(alt (*.f64 (/.f64 im re) im) (patch (*.f64 (/.f64 im re) 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))) (taylor -inf im) (#s(alt (sqrt.f64 (+.f64 im re)) (patch (sqrt.f64 (+.f64 im re)) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) re) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 re) (/ re (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) (patch (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) (patch (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) (patch (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) (patch #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ re (pow im 2)) (taylor -inf im) (#s(alt (/.f64 (/.f64 re im) im) (patch (/.f64 (/.f64 re im) im) #<representation binary64>) () ())) ())
#s(alt (/ (pow im 2) (pow re 2)) (taylor -inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2)))) (taylor -inf im) (#s(alt (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (patch (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify178.0ms (3.2%)

Memory
14.4MiB live, 202.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03865546
112095444
240675348
081984950
Stop Event
iter limit
node limit
Counts
480 → 451
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* 1/2 (/ (pow re 2) 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
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/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 re 2) (pow im 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))
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)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 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)))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)))))))
(/ (pow im 2) re)
(/ (+ (pow im 2) (pow re 2)) re)
(/ (+ (pow im 2) (pow re 2)) re)
(/ (+ (pow im 2) (pow re 2)) re)
(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))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ (pow im 2) (pow re 2))
(/ (+ (pow im 2) (pow re 2)) (pow re 2))
(/ (+ (pow im 2) (pow re 2)) (pow re 2))
(/ (+ (pow im 2) (pow re 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))))
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) (pow im 2)))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (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))
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)))))))
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)))))
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ 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)))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (/ (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))))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
1
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (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))))
(* -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) (pow im 2)))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (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))
(* -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))))))))
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)))
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ 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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))))
re
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(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))))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
1
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (pow im 2) (pow re 2)))
(* 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)
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) (pow im 2)))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/ (+ (* 1/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) (pow im 2))
(/ (pow re 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 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)))))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ 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)))))
(sqrt re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
re
(+ re (/ (pow im 2) re))
(+ re (/ (pow im 2) re))
(+ re (/ (pow im 2) re))
(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)))))
(pow re 2)
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(+ (pow im 2) (pow re 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
1
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (pow im 2) (pow re 2)))
(+ 1 (/ (pow im 2) (pow re 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)))))
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
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/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 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)))))))
(* 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))))
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ 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)))))))
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(/ (pow im 2) re)
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(* (pow im 2) (+ (/ 1 re) (/ re (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)))))))
(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))))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ (pow im 2) (pow re 2))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 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 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
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/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 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))))))))
(* 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))))
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ (pow im 2) re)
(/ 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))))))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))))
(/ (pow im 2) re)
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(* (pow im 2) (+ (/ 1 re) (/ re (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))))))))
(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))))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ re (pow im 2))
(/ (pow im 2) (pow re 2))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
Outputs
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)
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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 7/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (pow im 2) (pow re 2)) re)
(/.f64 (fma.f64 re re (*.f64 im im)) re)
(/ (+ (pow im 2) (pow re 2)) re)
(/.f64 (fma.f64 re re (*.f64 im im)) re)
(/ (+ (pow im 2) (pow re 2)) re)
(/.f64 (fma.f64 re re (*.f64 im im)) 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ (pow im 2) (pow re 2))
(/.f64 (/.f64 (*.f64 im im) re) re)
(/ (+ (pow im 2) (pow re 2)) (pow re 2))
(/.f64 (/.f64 (fma.f64 re re (*.f64 im im)) re) re)
(/ (+ (pow im 2) (pow re 2)) (pow re 2))
(/.f64 (/.f64 (fma.f64 re re (*.f64 im im)) re) re)
(/ (+ (pow im 2) (pow re 2)) (pow re 2))
(/.f64 (/.f64 (fma.f64 re re (*.f64 im im)) re) 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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/2 (/ (pow re 2) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) 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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im (*.f64 (fma.f64 (*.f64 (*.f64 im im) re) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
(*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))))) re)
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
1
#s(literal 1 binary64)
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 im #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* 1/2 (/ (pow re 2) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
re
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) (neg.f64 re))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) (neg.f64 re))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) (neg.f64 re))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) 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))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (neg.f64 re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (neg.f64 re))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))) (neg.f64 re))
re
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 re re))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
1
#s(literal 1 binary64)
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(* 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)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ 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 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 7/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
re
(+ re (/ (pow im 2) re))
(fma.f64 im (/.f64 im re) re)
(+ re (/ (pow im 2) re))
(fma.f64 im (/.f64 im re) re)
(+ re (/ (pow im 2) re))
(fma.f64 im (/.f64 im re) 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))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
1
#s(literal 1 binary64)
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(+ 1 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(* 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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ 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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re (*.f64 (fma.f64 (*.f64 (*.f64 re re) im) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (+.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ (pow im 2) (pow re 2))
(/.f64 (/.f64 (*.f64 im im) re) re)
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(/ (pow re 2) (pow im 2))
(/.f64 (/.f64 (*.f64 re re) im) im)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.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))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* 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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.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 re #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ 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))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) im) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 im))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))) (neg.f64 im))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(* (pow im 2) (+ (/ 1 re) (/ re (pow im 2))))
(fma.f64 (/.f64 re #s(literal 1 binary64)) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) #s(literal 1 binary64) (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ re (pow im 2))
(/.f64 re (*.f64 im im))
(/ (pow im 2) (pow re 2))
(/.f64 (/.f64 (*.f64 im im) re) re)
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(* (pow im 2) (+ (/ 1 (pow im 2)) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))

rewrite193.0ms (3.4%)

Memory
-38.1MiB live, 250.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037235
058229
1187221
21318213
08318187
Stop Event
iter limit
node limit
iter limit
Counts
21 → 485
Calls
Call 1
Inputs
(*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
(fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64))
(*.f64 re (/.f64 (/.f64 re im) im))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(*.f64 (/.f64 im re) im)
(/.f64 im re)
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
(sqrt.f64 (+.f64 im re))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re)
(*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
#s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re))
(/.f64 (/.f64 re im) im)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval184.0ms (3.3%)

Memory
20.3MiB live, 257.0MiB allocated
Compiler

Compiled 18 084 to 2 900 computations (84% saved)

prune37.0ms (0.7%)

Memory
-12.6MiB live, 63.9MiB allocated
Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1 04621 048
Fresh224
Picked325
Done123
Total1 05281 060
Accuracy
100.0%
Counts
1 060 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
98.0%
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
97.7%
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
53.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
24.7%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
99.1%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
98.4%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 68 to 55 computations (19.1% saved)

simplify267.0ms (4.7%)

Memory
8.6MiB live, 90.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)
cost-diff0
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))
cost-diff0
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)))
cost-diff0
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
cost-diff0
#s(approx (sqrt (+ im re)) (sqrt.f64 im))
cost-diff0
(sqrt.f64 im)
cost-diff0
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
cost-diff0
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
cost-diff-5120
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
cost-diff0
(*.f64 im im)
cost-diff0
(fma.f64 re re (*.f64 im im))
cost-diff0
#s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)
cost-diff0
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037228
053222
175222
2105222
3166222
4190222
5211222
6264222
7399222
8660222
91357222
102974222
113424222
123712222
133890222
144020222
154036222
164141222
174538222
184798222
194844222
204872222
214892222
224892222
234892222
244900222
254900222
264912222
274939222
284939222
04939215
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)
#s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64))
#s(literal 1 binary64)
im
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
im
#s(approx (sqrt (+ im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)))
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal -1 binary64)
(sqrt.f64 (+.f64 im re))
(+.f64 im re)
Outputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)
#s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64))
#s(literal 1 binary64)
im
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 im re)
(fma.f64 re re (*.f64 im im))
(fma.f64 im im (*.f64 re re))
re
(*.f64 im im)
im
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
(*.f64 #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
im
#s(approx (sqrt (+ im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 #s(literal 2 binary64) (/.f64 re im) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)))
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 #s(literal 2 binary64) (/.f64 re im) #s(literal -1 binary64)) re im)))
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 #s(literal 2 binary64) (/.f64 re im) #s(literal -1 binary64)) re im))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)
(fma.f64 (fma.f64 #s(literal 2 binary64) (/.f64 re im) #s(literal -1 binary64)) re im)
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64))
(fma.f64 #s(literal 2 binary64) (/.f64 re im) #s(literal -1 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal -1 binary64)
(sqrt.f64 (+.f64 im re))
(+.f64 im re)

localize125.0ms (2.2%)

Memory
27.7MiB live, 101.2MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)))
accuracy0.012976281620653759
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64))
accuracy0.48046875
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
accuracy0.8219453637444503
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))
accuracy0
(sqrt.f64 im)
accuracy0.48046875
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
accuracy1.4583568775701117
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
accuracy1.4662911581862526
#s(approx (sqrt (+ im re)) (sqrt.f64 im))
accuracy0
(fma.f64 re re (*.f64 im im))
accuracy0
(*.f64 im im)
accuracy29.571877910744718
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.01171875
(*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)
accuracy0.5855965684293705
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
accuracy1.0104144406573203
#s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64))
Samples
63.0ms256×0valid
Compiler

Compiled 286 to 52 computations (81.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 50.0ms
ival-div: 20.0ms (40.2% of total)
ival-mult: 12.0ms (24.1% of total)
ival-add: 7.0ms (14.1% of total)
ival-hypot: 5.0ms (10.1% of total)
ival-sqrt: 5.0ms (10.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series96.0ms (1.7%)

Memory
-30.9MiB live, 59.6MiB allocated
Counts
15 → 336
Calls
Call 1
Inputs
#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())
#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())
#s(alt (*.f64 im im) (patch (*.f64 im im) #<representation binary64>) () ())
#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())
#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())
#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())
#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())
#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())
#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt im (taylor 0 re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor 0 re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor 0 re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3))))))))) (taylor 0 re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re))))))) (taylor 0 re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ im (* 1/2 (/ (pow re 2) im))) (taylor 0 re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3))))))))) (taylor 0 re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* -1 re)) (taylor 0 re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* 2 (/ re im)) 1))) (taylor 0 re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1))) (taylor 0 re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt im (taylor 0 re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* -1 re)) (taylor 0 re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* 2 (/ re im)) 1))) (taylor 0 re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (+ im (* re (- (* 2 (/ re im)) 1))) (taylor 0 re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt -1 (taylor 0 re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor 0 re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor 0 re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor 0 re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor inf re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))) (taylor inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))) (taylor inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) (taylor inf re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3))))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))) (taylor inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt re (taylor inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* re (+ 1 (* -1 (/ im re)))) (taylor inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re)))) (taylor inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re)))) (taylor inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ (pow re 2) im)) (taylor inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ re im)) (taylor inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* re (- (* 2 (/ 1 im)) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* re (- (* 2 (/ 1 im)) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* re (- (* 2 (/ 1 im)) (/ 1 re))) (taylor inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor -inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2)))) (taylor -inf re) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor -inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2)))) (taylor -inf re) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor -inf re) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))) (taylor -inf re) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 re) (taylor -inf re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))) (taylor -inf re) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt re) (pow (sqrt -1) 2))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))) (taylor -inf re) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt re (taylor -inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (/ im re) 1))) (taylor -inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1))) (taylor -inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1))) (taylor -inf re) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ (pow re 2) im)) (taylor -inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re))) (taylor -inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im)))) (taylor -inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im)))) (taylor -inf re) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ re im)) (taylor -inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (/ 1 re) (* 2 (/ 1 im))))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (/ 1 re) (* 2 (/ 1 im))))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* re (- (/ 1 re) (* 2 (/ 1 im))))) (taylor -inf re) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) im)) (taylor 0 im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) im) (taylor 0 im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ (pow re 2) (pow im 2))) (taylor 0 im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2)) (taylor 0 im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow re 2) (taylor 0 im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.f64 re re (*.f64 im im)) #<representation binary64>) () ())) ())
#s(alt (+ (pow im 2) (pow re 2)) (taylor 0 im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (sqrt.f64 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3))))))))) (taylor 0 im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor 0 im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re)))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5)))))))))) (taylor 0 im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (+ re (* 1/2 (/ (pow im 2) re))) (taylor 0 im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt re) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3)))))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3))))))))) (taylor 0 im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt re (taylor 0 im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* -1 im)) (taylor 0 im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* im (- (* 2 (/ im re)) 1))) (taylor 0 im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1))) (taylor 0 im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ (pow re 2) im)) (taylor 0 im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* -1 (* im re)) (* 2 (pow re 2))) im) (taylor 0 im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im) (taylor 0 im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im) (taylor 0 im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* 2 (/ re im)) (taylor 0 im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* -1 im) (* 2 re)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* -1 im) (* 2 re)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* -1 im) (* 2 re)) im) (taylor 0 im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor inf im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))) (taylor inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))) (taylor inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))) (taylor inf im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (sqrt im) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))) (taylor inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* -1 (/ re im)))) (taylor inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im)))) (taylor inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im)))) (taylor inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt im (taylor inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (* -1 (/ re im)))) (taylor inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2)))))) (taylor inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt -1 (taylor inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 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 (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) (patch #s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1))) (taylor -inf im) (#s(alt (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) (patch (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im) #<representation binary64>) () ())) ())
#s(alt 1 (taylor -inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (taylor -inf im) (#s(alt #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) (patch #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow im 2) (taylor -inf im) (#s(alt (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im)) (patch (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.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 (fma.f64 re re (*.f64 im im))) (patch (sqrt.f64 (fma.f64 re re (*.f64 im im))) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 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 (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) (patch (*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (patch #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 im) (patch (sqrt.f64 im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))) (taylor -inf im) (#s(alt #s(approx (sqrt (+ im re)) (sqrt.f64 im)) (patch #s(approx (sqrt (+ im re)) (sqrt.f64 im)) #<representation binary64>) () ())) ())
#s(alt (* -1 im) (taylor -inf im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))) (taylor -inf im) (#s(alt (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im 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 (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) (patch (*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt im) (pow (sqrt -1) 2))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))) (taylor -inf im) (#s(alt (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (patch (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (/ re im) 1))) (taylor -inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1))) (taylor -inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1))) (taylor -inf im) (#s(alt #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) (patch #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)) #<representation binary64>) () ())) ())
#s(alt im (taylor -inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (/ re im) 1))) (taylor -inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1))) (taylor -inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt (* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1))) (taylor -inf im) (#s(alt (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) (patch (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im) #<representation binary64>) () ())) ())
#s(alt -1 (taylor -inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor -inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor -inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
#s(alt (- (* 2 (/ re im)) 1) (taylor -inf im) (#s(alt (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) (patch (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify349.0ms (6.2%)

Memory
-11.5MiB live, 183.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04985031
115684806
252014662
086604310
Stop Event
iter limit
node limit
Counts
336 → 308
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)))
1
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 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)))))
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)))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) 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)))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
im
(+ im (* -1 re))
(+ im (* re (- (* 2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1)))
im
(+ im (* -1 re))
(+ im (* re (- (* 2 (/ re im)) 1)))
(+ im (* re (- (* 2 (/ re im)) 1)))
-1
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
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))))
(* 1/2 (/ (pow re 2) (pow im 2)))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (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)))))))
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)))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
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)))))))
(sqrt re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
re
(* re (+ 1 (* -1 (/ im re))))
(* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(* 2 (/ (pow re 2) im))
(* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re)))
(* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re)))
(* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re)))
(* 2 (/ re im))
(* re (- (* 2 (/ 1 im)) (/ 1 re)))
(* re (- (* 2 (/ 1 im)) (/ 1 re)))
(* re (- (* 2 (/ 1 im)) (/ 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))))))))
(* 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))))
(* 1/2 (/ (pow re 2) (pow im 2)))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (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))))))))
(* -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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
re
(* -1 (* re (- (/ im re) 1)))
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1)))
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1)))
(* 2 (/ (pow re 2) im))
(* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re)))
(* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im))))
(* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im))))
(* 2 (/ re im))
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 im)))))
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 im)))))
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 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)
(* 1/2 (/ (pow re 2) (pow im 2)))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/ (+ (* 1/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))
(+ (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)))))
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)))))
(sqrt re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
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)))))
(sqrt re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
re
(+ re (* -1 im))
(+ re (* im (- (* 2 (/ im re)) 1)))
(+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1)))
(* 2 (/ (pow re 2) im))
(/ (+ (* -1 (* im re)) (* 2 (pow re 2))) im)
(/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im)
(/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im)
(* 2 (/ re im))
(/ (+ (* -1 im) (* 2 re)) im)
(/ (+ (* -1 im) (* 2 re)) im)
(/ (+ (* -1 im) (* 2 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)))))
1
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 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)))))))
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)))))))
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) 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)))))))
(sqrt im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
im
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
im
(* im (+ 1 (* -1 (/ re im))))
(* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2))))))
-1
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
(* -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
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(+ 1 (* 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))))))))
(* -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 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 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 (* (sqrt im) (pow (sqrt -1) 2)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
im
(* -1 (* im (- (/ re im) 1)))
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1)))
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1)))
im
(* -1 (* im (- (/ re im) 1)))
(* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1)))
(* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1)))
-1
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
(- (* 2 (/ re im)) 1)
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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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)
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 7/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 re #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/8 (sqrt (/ 1 (pow im 3)))) (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 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))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 7/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* -9/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 7/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 7/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re im)
(+ im (* re (- (* re (+ (* -2 (/ re (pow im 2))) (* 2 (/ 1 im)))) 1)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (/.f64 re im) im) #s(literal -2 binary64) (/.f64 #s(literal 2 binary64) im)) re #s(literal -1 binary64)) re im)
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re im)
(+ im (* re (- (* 2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re im)
-1
#s(literal -1 binary64)
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re 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))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* 1/2 (/ (pow re 2) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) re) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 3) (sqrt (/ 1 (pow re 7))))) (* 1/2 (* im (sqrt (/ 1 (pow re 3)))))))))
(*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) im) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(sqrt re)
(sqrt.f64 re)
(* re (+ (sqrt (/ 1 re)) (* -1/2 (* im (sqrt (/ 1 (pow re 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (sqrt (/ 1 re)) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 7))) (+ (* 1/4 (* (pow im 2) re)) (* im (- (pow im 2) (* -1 (pow im 2))))))) (* 1/2 (* (sqrt (/ 1 (pow re 5))) (- (pow im 2) (* -1 (pow im 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 im im) re) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
re
(* re (+ 1 (* -1 (/ im re))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)
(* re (- (+ 1 (/ (pow im 2) (pow re 2))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (*.f64 im (/.f64 im re)) #s(literal -2 binary64) im) #s(literal 1 binary64)) re)
(* re (- (+ 1 (+ (* -1 (/ (* im (- (pow im 2) (* -1 (pow im 2)))) (pow re 3))) (/ (pow im 2) (pow re 2)))) (+ (* -1 (/ (pow im 2) (pow re 2))) (/ im re))))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (*.f64 im (/.f64 im re)) #s(literal -2 binary64) im) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal 3 binary64))))) re)
(* 2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 2 binary64))
(* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re)
(* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re)))
(*.f64 (-.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 1 binary64) re)) (*.f64 re re))
(* (pow re 2) (- (+ (* 2 (/ 1 im)) (/ im (pow re 2))) (/ 1 re)))
(*.f64 (-.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 2 binary64) im)) (/.f64 #s(literal 1 binary64) re)) (*.f64 re re))
(* 2 (/ re im))
(*.f64 (/.f64 #s(literal 2 binary64) im) re)
(* re (- (* 2 (/ 1 im)) (/ 1 re)))
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(* re (- (* 2 (/ 1 im)) (/ 1 re)))
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(* re (- (* 2 (/ 1 im)) (/ 1 re)))
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re 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))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* 1/2 (/ (pow re 2) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (neg.f64 re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (neg.f64 re))
(* -1 (* re (+ (* -1/8 (* (/ (pow im 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (/ (pow im 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow re 7))))) (+ (* 1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))) (neg.f64 re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im (/.f64 im re)) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow re 5))) (- (* -1 (pow im 2)) (pow im 2)))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) im)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* 1/2 (* (sqrt re) (- (* -1 (pow im 2)) (pow im 2)))) (* 1/2 (* (sqrt (/ 1 re)) (+ (* -1 (* im (- (* -1 (pow im 2)) (pow im 2)))) (* -1/4 (/ (* (pow im 2) re) (pow (sqrt -1) 2))))))) (pow re 3))) (+ (* -1/2 (* im (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 re)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 im im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 im im)) (sqrt.f64 re))) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (neg.f64 re))
re
(* -1 (* re (- (/ im re) 1)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow im 2)) (pow im 2)) re)) im) re)) 1)))
(*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (*.f64 im (/.f64 im re)) #s(literal -2 binary64) im) #s(literal 1 binary64)) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* im (- (* -1 (pow im 2)) (pow im 2))) re)) (* -1 (pow im 2))) (pow im 2)) re)) im) re)) 1)))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 im (+.f64 (fma.f64 (*.f64 im (/.f64 im re)) #s(literal -2 binary64) im) im)) re) im) re) #s(literal 1 binary64)) re)
(* 2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 2 binary64))
(* (pow re 2) (- (* 2 (/ 1 im)) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re)
(* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im))))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)) re) re)
(* (pow re 2) (+ (* -1 (/ (+ 1 (* -1 (/ im re))) re)) (* 2 (/ 1 im))))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 im re)) re)) re) re)
(* 2 (/ re im))
(*.f64 (/.f64 #s(literal 2 binary64) im) re)
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 im)))))
(neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -2 binary64) im) re)))
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 im)))))
(neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -2 binary64) im) re)))
(* -1 (* re (- (/ 1 re) (* 2 (/ 1 im)))))
(neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -2 binary64) im) re)))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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 (/ (pow re 2) (pow im 2)))
(*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im) im)
(/ (+ (* 1/2 (pow re 2)) (pow im 2)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) 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))
(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) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 7/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/8 (* im (sqrt (/ 1 (pow re 3))))) (* 1/2 (sqrt (/ 1 re))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* 1/2 (sqrt (/ 1 re))) (* im (+ (* -1/8 (sqrt (/ 1 (pow re 3)))) (* 1/16 (* im (sqrt (/ 1 (pow re 5))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im (sqrt.f64 re))
re
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.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 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 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)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* -1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* 7/8 (* im (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 7/8 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
(+ (sqrt re) (* im (+ (* -1/2 (sqrt (/ 1 re))) (* im (+ (* -9/16 (* im (sqrt (/ 1 (pow re 5))))) (* 7/8 (sqrt (/ 1 (pow re 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -9/16 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 7/8 binary64))) im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1/2 binary64))) im (sqrt.f64 re))
re
(+ re (* -1 im))
(-.f64 re im)
(+ re (* im (- (* 2 (/ im re)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) re) im #s(literal -1 binary64)) im re)
(+ re (* im (- (* im (+ (* -2 (/ im (pow re 2))) (* 2 (/ 1 re)))) 1)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 im (*.f64 re re)) #s(literal -2 binary64) (/.f64 #s(literal 2 binary64) re)) im #s(literal -1 binary64)) im re)
(* 2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 2 binary64))
(/ (+ (* -1 (* im re)) (* 2 (pow re 2))) im)
(/.f64 (*.f64 re (fma.f64 #s(literal 2 binary64) re (neg.f64 im))) im)
(/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 2 binary64) (*.f64 (-.f64 im re) im)) im)
(/ (+ (* 2 (pow re 2)) (* im (+ im (* -1 re)))) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 2 binary64) (*.f64 (-.f64 im re) im)) im)
(* 2 (/ re im))
(*.f64 (/.f64 #s(literal 2 binary64) im) re)
(/ (+ (* -1 im) (* 2 re)) im)
(/.f64 (fma.f64 #s(literal 2 binary64) re (neg.f64 im)) im)
(/ (+ (* -1 im) (* 2 re)) im)
(/.f64 (fma.f64 #s(literal 2 binary64) re (neg.f64 im)) im)
(/ (+ (* -1 im) (* 2 re)) im)
(/.f64 (fma.f64 #s(literal 2 binary64) re (neg.f64 im)) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) 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)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 re im) re) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(*.f64 (fma.f64 re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (fma.f64 (*.f64 re re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) #s(literal 1/16 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
im
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(sqrt im)
(sqrt.f64 im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 7))) (+ (* 1/4 (* im (pow re 2))) (* re (- (pow re 2) (* -1 (pow re 2))))))) (* 1/2 (* (sqrt (/ 1 (pow im 5))) (- (pow re 2) (* -1 (pow re 2)))))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 re im) re) #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
im
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (/ (pow re 2) (pow im 2))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
(* im (- (+ 1 (+ (* -1 (/ (* re (- (pow re 2) (* -1 (pow re 2)))) (pow im 3))) (/ (pow re 2) (pow im 2)))) (+ (* -1 (/ (pow re 2) (pow im 2))) (/ re im))))
(*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64))) (pow.f64 im #s(literal 3 binary64)))) (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im)) im)
im
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
(* im (+ 1 (+ (* -1 (/ re im)) (* 2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
-1
#s(literal -1 binary64)
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
im
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)) (neg.f64 im))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)) (neg.f64 im))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)) (neg.f64 im))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))
(fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))
(pow im 2)
(*.f64 im im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) 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))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 im))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow im 7))) (/ (pow re 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))) (neg.f64 im))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (neg.f64 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 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) im) im) re) re (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(sqrt.f64 im)
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (- (* -1 (pow re 2)) (pow re 2)))) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (- (* -1 (pow re 2)) (pow re 2)))) (* 1/2 (* (sqrt (/ 1 im)) (+ (* -1 (* re (- (* -1 (pow re 2)) (pow re 2)))) (* -1/4 (/ (* im (pow re 2)) (pow (sqrt -1) 2))))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* (sqrt (/ 1 im)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re im) re) #s(literal -1 binary64)) #s(literal -1/4 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (sqrt.f64 im))) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
im
(* -1 (* im (- (/ re im) 1)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (* -1 (pow re 2)) (pow re 2)) im)) re) im)) 1)))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
(* -1 (* im (- (* -1 (/ (- (* -1 (/ (- (+ (* -1 (/ (* re (- (* -1 (pow re 2)) (pow re 2))) im)) (* -1 (pow re 2))) (pow re 2)) im)) re) im)) 1)))
(*.f64 (+.f64 (/.f64 (-.f64 (/.f64 (*.f64 re (fma.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) (neg.f64 re) re)) im) re) im) #s(literal 1 binary64)) im)
im
(* -1 (* im (- (/ re im) 1)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1)))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
(* -1 (* im (- (* -1 (/ (+ (* -1 re) (* 2 (/ (pow re 2) im))) im)) 1)))
(fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64)) re) im) im im)
-1
#s(literal -1 binary64)
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))
(- (* 2 (/ re im)) 1)
(fma.f64 (/.f64 #s(literal 2 binary64) im) re #s(literal -1 binary64))

rewrite227.0ms (4%)

Memory
36.1MiB live, 155.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037209
053201
1172193
21210187
08284170
Stop Event
iter limit
node limit
iter limit
Counts
15 → 331
Calls
Call 1
Inputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im)
#s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64))
(fma.f64 re re (*.f64 im im))
(*.f64 im im)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
#s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im))
(sqrt.f64 im)
#s(approx (sqrt (+ im re)) (sqrt.f64 im))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)))
#s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im)
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval244.0ms (4.3%)

Memory
-22.6MiB live, 205.0MiB allocated
Compiler

Compiled 14 334 to 1 878 computations (86.9% saved)

prune47.0ms (0.8%)

Memory
25.3MiB live, 65.0MiB allocated
Pruning

8 alts after pruning (0 fresh and 8 done)

PrunedKeptTotal
New6580658
Fresh000
Picked044
Done044
Total6588666
Accuracy
100.0%
Counts
666 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
98.0%
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
97.7%
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
53.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
24.7%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
99.1%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
98.4%
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 224 to 119 computations (46.9% saved)

regimes68.0ms (1.2%)

Memory
-55.7MiB live, 52.9MiB allocated
Counts
18 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(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 re re (*.f64 im im)))
#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 im re) im) #s(literal 1/2 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (-.f64 im re))) (sqrt.f64 (+.f64 im re)))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(hypot.f64 re im)
Outputs
(hypot.f64 re im)
Calls

6 calls:

28.0ms
(*.f64 re re)
6.0ms
re
6.0ms
im
5.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
5.0ms
(*.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)

regimes59.0ms (1.1%)

Memory
8.3MiB live, 47.9MiB allocated
Counts
17 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(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 re re (*.f64 im im)))
#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 im re) im) #s(literal 1/2 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (-.f64 im re))) (sqrt.f64 (+.f64 im re)))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) re) re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
Outputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
Calls

6 calls:

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

Compiled 23 to 21 computations (8.7% saved)

regimes58.0ms (1%)

Memory
-1.3MiB live, 38.5MiB allocated
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
(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 re re (*.f64 im im)))
#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 im re) im) #s(literal 1/2 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) #s(approx (sqrt (+ im re)) (sqrt.f64 im)))
(*.f64 #s(approx (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt.f64 im)) (sqrt.f64 (+.f64 im re)))
(*.f64 (sqrt.f64 #s(approx (/ (+ (* im im) (* re re)) (+ im re)) (-.f64 im re))) (sqrt.f64 (+.f64 im re)))
Outputs
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
Calls

6 calls:

37.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
4.0ms
im
4.0ms
re
4.0ms
(*.f64 im im)
4.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
Results
AccuracySegmentsBranch
98.4%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
98.4%1(+.f64 (*.f64 re re) (*.f64 im im))
98.4%1(*.f64 re re)
98.4%1(*.f64 im im)
98.4%1re
98.4%1im
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes8.0ms (0.1%)

Memory
12.8MiB live, 12.8MiB 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:

1.0ms
im
1.0ms
re
1.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
1.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
1.8%1re
1.8%1im
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 re re)
1.8%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

simplify22.0ms (0.4%)

Memory
18.7MiB live, 18.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03177
14077
24277
34377
Stop Event
saturated
Calls
Call 1
Inputs
(hypot.f64 re im)
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Outputs
(hypot.f64 re im)
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 re (/.f64 (/.f64 re im) im)) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 (fma.f64 (*.f64 (/.f64 (/.f64 re im) im) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) im))
#s(approx (* (sqrt (/ (+ (* im im) (* re re)) (+ im re))) (sqrt (+ im re))) (*.f64 #s(approx (+ (* (* re (/ (/ re im) im)) 1/2) 1) #s(literal 1 binary64)) im))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))

soundness707.0ms (12.6%)

Memory
-12.4MiB live, 264.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0621
01021
12921
219621
3178821
0862415
0104620
1296620
2953618
33667584
46426582
08051530
04584431
114514295
248734209
081303894
03865546
112095444
240675348
081984950
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 81 to 61 computations (24.7% saved)

preprocess62.0ms (1.1%)

Memory
-13.8MiB live, 179.9MiB allocated
Remove

(sort re im)

(abs re)

(abs im)

Compiler

Compiled 100 to 80 computations (20% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...