math.sqrt on complex, imaginary part, im greater than 0 branch

Time bar (total: 7.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze109.0ms (1.5%)

Memory
2.8MiB live, 146.3MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
50%25%25%50%0%0%0%2
50%25%25%50%0%0%0%3
62.5%31.2%18.7%50%0%0%0%4
62.5%31.2%18.7%50%0%0%0%5
68.8%34.3%15.6%50%0%0%0%6
68.8%34.3%15.6%50%0%0%0%7
71.9%35.9%14%50%0%0%0%8
71.9%35.9%14%50%0%0%0%9
73.4%36.7%13.3%50%0%0%0%10
73.4%36.7%13.3%50%0%0%0%11
74.2%37.1%12.9%50%0%0%0%12
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.6s (21.5%)

Memory
33.6MiB live, 1 879.2MiB allocated
Samples
593.0ms6 282×0valid
214.0ms761×2valid
197.0ms431×3valid
156.0ms782×1valid
Precisions
Click to see histograms. Total time spent on operations: 903.0ms
ival-hypot: 404.0ms (44.7% of total)
ival-mult: 197.0ms (21.8% of total)
ival-sqrt: 99.0ms (11% of total)
ival->: 69.0ms (7.6% of total)
ival-sub: 60.0ms (6.6% of total)
adjust: 58.0ms (6.4% of total)
exact: 13.0ms (1.4% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain243.0ms (3.4%)

Memory
-4.0MiB live, 240.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1380-1(-6.377018745085808e-162 1.653052004228751e-295)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
350-0-(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
260-1(1.2838768775529248e-170 1.3249208448710106e-240)(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 im im)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1220
(+.f64 (*.f64 re re) (*.f64 im im))overflow122
(*.f64 re re)overflow75
(*.f64 im im)overflow64
-.f64(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation350
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue250
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow33
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow8
(*.f64 re re)underflow51
(*.f64 im im)underflow67
(+.f64 (*.f64 re re) (*.f64 im im))underflow15
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow33
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue150
(+.f64 (*.f64 re re) (*.f64 im im))underflow15
(*.f64 re re)underflow51
(*.f64 im im)underflow67
Confusion
Predicted +Predicted -
+1711
-084
Precision
1.0
Recall
0.9941860465116279
Confusion?
Predicted +Predicted MaybePredicted -
+17101
-0084
Precision?
1.0
Recall?
0.9941860465116279
Freqs
test
numberfreq
085
1145
226
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
49.0ms378×0valid
14.0ms52×2valid
11.0ms30×3valid
10.0ms52×1valid
Compiler

Compiled 169 to 40 computations (76.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-mult: 29.0ms (47.1% of total)
ival-hypot: 15.0ms (24.4% of total)
ival-sqrt: 5.0ms (8.1% of total)
adjust: 4.0ms (6.5% of total)
ival-sub: 4.0ms (6.5% of total)
ival-add: 3.0ms (4.9% of total)
exact: 1.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess51.0ms (0.7%)

Memory
13.6MiB live, 57.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03077
17777
215177
318877
423977
525877
626677
728775
831675
936275
1039975
1144775
1252575
1368775
1477175
1584975
1692175
1796975
1898175
01215
02015
13615
28115
314215
418415
519115
619515
720415
821515
923315
1025515
1127515
1230115
1335115
1437915
1540515
1642915
1744515
1844915
044910
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Symmetry

(abs im)

Compiler

Compiled 15 to 12 computations (20% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB 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
35.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Compiler

Compiled 15 to 12 computations (20% saved)

simplify47.0ms (0.6%)

Memory
-25.6MiB live, 25.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
cost-diff1
(+.f64 (*.f64 re re) (*.f64 im im))
cost-diff4
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
13675
28175
314275
418475
519175
619575
720475
821575
923375
1025575
1127575
1230175
1335175
1437975
1540575
1642975
1744575
1844975
044949
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(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
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(-.f64 (hypot.f64 im re) re)
(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

localize58.0ms (0.8%)

Memory
3.6MiB live, 94.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy8.005546280615611
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy32.145732946202735
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
21.0ms189×0valid
7.0ms26×2valid
6.0ms15×3valid
5.0ms26×1valid
Compiler

Compiled 77 to 14 computations (81.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-mult: 11.0ms (40% of total)
ival-hypot: 8.0ms (29.1% of total)
ival-sqrt: 3.0ms (10.9% of total)
adjust: 2.0ms (7.3% of total)
ival-sub: 2.0ms (7.3% of total)
ival-add: 1.0ms (3.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series17.0ms (0.2%)

Memory
29.8MiB live, 29.8MiB allocated
Counts
5 → 91
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Outputs
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))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 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)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) 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 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -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/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* 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) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Calls

6 calls:

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

simplify202.0ms (2.8%)

Memory
14.8MiB live, 200.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04632634
116612487
276812469
083152336
Stop Event
iter limit
node limit
Counts
91 → 89
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 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)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) 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 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -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/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* 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) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) 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 (fma.f64 (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)))) (*.f64 re re) (/.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 im im (*.f64 re re))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 re #s(literal -1/4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (-.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) #s(literal 1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (-.f64 (*.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)) re) #s(literal 1 binary64)) re im)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.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 (*.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 (+ (* -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 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 im (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/32 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/16 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #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/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) #s(literal -1 binary64))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/8 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1 binary64))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) #s(literal -2 binary64))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (+ (* -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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (+.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 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(+ 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 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/32 binary64)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) im) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/32 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im im))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 re)) #s(literal -1/4 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im im))) (*.f64 im im))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/16 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im im))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (/.f64 (fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 re)) #s(literal -1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.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))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/128 binary64) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.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))
(* 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 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 (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.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) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 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)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.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) (*.f64 (sqrt.f64 #s(literal 2 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)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) re) im)) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(+.f64 im (*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (/.f64 (*.f64 re re) im) im) #s(literal 1/2 binary64)))) im im))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/16 binary64))) (pow.f64 (neg.f64 im) #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (pow.f64 (neg.f64 im) #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) im)) (neg.f64 im))

rewrite116.0ms (1.6%)

Memory
-32.1MiB live, 158.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01253
02051
16751
254427
0943415
Stop Event
iter limit
node limit
iter limit
Counts
5 → 211
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Outputs
(*.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(*.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 (hypot.f64 im re) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (hypot.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fabs.f64 (hypot.f64 (*.f64 re re) (*.f64 im im))) (fabs.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (fabs.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fabs.f64 (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (hypot.f64 (*.f64 im im) (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (hypot.f64 (*.f64 re re) (*.f64 im im)) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (neg.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (hypot.f64 im re)))
(fabs.f64 (hypot.f64 im re))
(hypot.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) re)
(hypot.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 (neg.f64 re) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 (neg.f64 im) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(exp.f64 (log.f64 (hypot.f64 im re)))
(+.f64 (cosh.f64 (log.f64 (hypot.f64 im re))) (sinh.f64 (log.f64 (hypot.f64 im re))))
(*.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (*.f64 (hypot.f64 im re) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (neg.f64 (+.f64 re im))) (neg.f64 (+.f64 re im)))
(*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (neg.f64 re) im)) (+.f64 (neg.f64 re) im))
(*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 re im)) (+.f64 re im))
(*.f64 (neg.f64 (neg.f64 (hypot.f64 im re))) (neg.f64 (neg.f64 (hypot.f64 im re))))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (hypot.f64 im re)))
(*.f64 (neg.f64 (hypot.f64 im re)) (neg.f64 (hypot.f64 im re)))
(*.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (hypot.f64 im re) (hypot.f64 im re))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (/.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (hypot.f64 im re) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64))
(/.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (+.f64 re im))) (-.f64 (neg.f64 re) (neg.f64 im)))
(/.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 (neg.f64 re) im)) (-.f64 (neg.f64 re) im))
(/.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 re im)) (-.f64 re im))
(/.f64 (*.f64 (hypot.f64 (*.f64 re re) (*.f64 im im)) (hypot.f64 im re)) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (hypot.f64 im re)) (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 (hypot.f64 im re) (hypot.f64 (*.f64 re re) (*.f64 im im))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (*.f64 (hypot.f64 im re) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (*.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im)))))))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 (neg.f64 re) re) #s(literal 3 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (*.f64 im im) (*.f64 (neg.f64 re) re)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (*.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (*.f64 (hypot.f64 (*.f64 re re) (*.f64 im im)) (hypot.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (*.f64 (hypot.f64 (*.f64 re re) (*.f64 im im)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (hypot.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 re im) #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 6 binary64)))) (*.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (*.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 im re) (-.f64 im re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (*.f64 (-.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 re im) #s(literal 6 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 18 binary64))) (*.f64 (-.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 re im) #s(literal 6 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (neg.f64 re) re (*.f64 im im)))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (neg.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))
(neg.f64 (fma.f64 (neg.f64 re) re (*.f64 (neg.f64 im) im)))
(neg.f64 (fma.f64 (neg.f64 im) im (*.f64 (neg.f64 re) re)))
(neg.f64 (*.f64 (neg.f64 (hypot.f64 im re)) (hypot.f64 im re)))
(neg.f64 (*.f64 (hypot.f64 im re) (neg.f64 (hypot.f64 im re))))
(neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 (pow.f64 re #s(literal 8 binary64)) (*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (/.f64 (*.f64 (neg.f64 re) re) (neg.f64 (+.f64 re im))) (/.f64 (*.f64 (neg.f64 re) re) (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (*.f64 (neg.f64 re) re) (+.f64 (neg.f64 re) im)) (/.f64 (*.f64 (neg.f64 re) re) (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (*.f64 (neg.f64 re) re) (+.f64 re im)) (/.f64 (*.f64 (neg.f64 re) re) (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (neg.f64 (+.f64 re im))) (/.f64 (neg.f64 re) (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (neg.f64 (+.f64 re im))) (/.f64 re (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 (neg.f64 re) im)) (/.f64 (neg.f64 re) (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 (neg.f64 re) im)) (/.f64 re (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 re im)) (/.f64 (neg.f64 re) (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 re im)) (/.f64 re (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (neg.f64 re) (neg.f64 (+.f64 re im))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (neg.f64 re) (+.f64 (neg.f64 re) im)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (neg.f64 re) (+.f64 re im)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (*.f64 re re) (neg.f64 (+.f64 re im))) (/.f64 (*.f64 re re) (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (*.f64 re re) (+.f64 (neg.f64 re) im)) (/.f64 (*.f64 re re) (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 (*.f64 re re) (+.f64 re im)) (/.f64 (*.f64 re re) (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 re (neg.f64 (+.f64 re im))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (neg.f64 re) (neg.f64 im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 re (+.f64 (neg.f64 re) im)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (neg.f64 re) im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (/.f64 re (+.f64 re im)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 re im)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)) (*.f64 re re))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (*.f64 im im))
(fma.f64 (*.f64 (neg.f64 re) re) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 (neg.f64 re) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 re (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 (*.f64 re re) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (neg.f64 re) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 (neg.f64 re) (neg.f64 re) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 re re))
(fma.f64 (*.f64 im im) (/.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 im im (*.f64 re re))
(fma.f64 (*.f64 re re) (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 re (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(fma.f64 re re (*.f64 im im))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))))
(-.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(-.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(-.f64 (*.f64 im im) (*.f64 (neg.f64 re) re))
(-.f64 (*.f64 re re) (*.f64 (neg.f64 im) im))
(fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 im re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(+.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(+.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(+.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(+.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (pow.f64 im #s(literal 6 binary64)) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 re) re (*.f64 im im))))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
#s(literal 0 binary64)
#s(literal 0 binary64)
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 (*.f64 re (-.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))
(*.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 (*.f64 re (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (*.f64 (*.f64 re (-.f64 (hypot.f64 im re) re)) (-.f64 (*.f64 re (-.f64 (hypot.f64 im re) re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (-.f64 (hypot.f64 im re) re))
(*.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))
(*.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(*.f64 (+.f64 (hypot.f64 im re) (neg.f64 re)) (/.f64 (-.f64 (hypot.f64 im re) (neg.f64 re)) (-.f64 (hypot.f64 im re) re)))
(*.f64 (-.f64 (hypot.f64 im re) re) (/.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(*.f64 (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (/.f64 (-.f64 (hypot.f64 im re) re) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))) (*.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))) (-.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 re (hypot.f64 im re)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (fma.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 (-.f64 (hypot.f64 im re) re) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (*.f64 (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 (*.f64 re (-.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) (-.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(neg.f64 (-.f64 (hypot.f64 im re) re))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (-.f64 (hypot.f64 im re) re) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) re)
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) re)
(fma.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 (neg.f64 re)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))) re)
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re)
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) re)
(fma.f64 (neg.f64 (hypot.f64 im re)) (/.f64 (neg.f64 (hypot.f64 im re)) (-.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(fma.f64 (hypot.f64 im re) (/.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 im re) re)
(-.f64 re (neg.f64 (hypot.f64 im re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) re (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re))))
(+.f64 (neg.f64 (hypot.f64 im re)) (neg.f64 re))
(+.f64 (neg.f64 re) (neg.f64 (hypot.f64 im re)))
(+.f64 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))

eval40.0ms (0.6%)

Memory
33.7MiB live, 79.0MiB allocated
Compiler

Compiled 10 052 to 2 117 computations (78.9% saved)

prune36.0ms (0.5%)

Memory
-16.2MiB live, 42.7MiB allocated
Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New28217299
Fresh000
Picked101
Done000
Total28317300
Accuracy
99.8%
Counts
300 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
76.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re))) re))))
35.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
44.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re im)) re))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
13.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 3 binary64))))))))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
14.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
15.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
46.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
30.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
43.7%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))))
19.1%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)))
27.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
44.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
27.5%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
6.6%
#s(literal 0 binary64)
Compiler

Compiled 796 to 588 computations (26.1% saved)

simplify93.0ms (1.3%)

Memory
-12.8MiB live, 124.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 16 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
044399
076399
1129399
2311399
31252399
45643399
08344394
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
#s(literal 2 binary64)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(-.f64 #s(literal 1 binary64) (/.f64 re im))
#s(literal 1 binary64)
(/.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(neg.f64 re)
re
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/2 binary64) re)
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))
(*.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))
(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 (/.f64 im (pow.f64 re #s(literal 3 binary64))))
im
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
#s(literal -1/8 binary64)
(/.f64 #s(literal 1/2 binary64) re)
(*.f64 im im)
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 (hypot.f64 re im) re)
(-.f64 (hypot.f64 im re) re)
(hypot.f64 re im)
(hypot.f64 im re)
re
im
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(-.f64 #s(literal 1 binary64) (/.f64 re im))
#s(literal 1 binary64)
(/.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -2 binary64)) re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -2 binary64)) re)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -2 binary64)) re)) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -2 binary64)) re))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -2 binary64)) re)
(neg.f64 re)
re
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))
(fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))
(/.f64 #s(literal 1/2 binary64) re)
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))
(*.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))
(*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)
(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))
(fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re))
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
im
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
#s(literal -1/8 binary64)
(/.f64 #s(literal 1/2 binary64) re)
(*.f64 im im)

localize116.0ms (1.6%)

Memory
18.5MiB live, 163.4MiB allocated
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))))
accuracy6.006163606060896
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
accuracy7.515253516900062
(*.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))
accuracy45.5162247187697
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))
accuracy2.3375015147583467
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))))
accuracy7.485512906585344
(/.f64 (*.f64 im im) re)
accuracy42.613319544117836
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
accuracy8.698913052595103
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
accuracy33.08639605046718
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
accuracy8.005546280615611
(-.f64 (hypot.f64 re im) re)
Samples
43.0ms188×0valid
14.0ms26×2valid
14.0ms15×3valid
12.0ms26×1valid
1.0ms5exit
Compiler

Compiled 334 to 31 computations (90.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 56.0ms
ival-mult: 17.0ms (30.5% of total)
ival-div: 10.0ms (17.9% of total)
ival-hypot: 8.0ms (14.3% of total)
adjust: 5.0ms (9% of total)
ival-pow: 5.0ms (9% of total)
ival-sub: 3.0ms (5.4% of total)
ival-sqrt: 3.0ms (5.4% of total)
ival-add: 3.0ms (5.4% of total)
exact: 1.0ms (1.8% of total)
ival-neg: 1.0ms (1.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series29.0ms (0.4%)

Memory
-4.4MiB live, 41.4MiB allocated
Counts
21 → 102
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 im im) re)
(*.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))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(* -1/2 (/ (pow im 2) re))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/ (pow im 2) re)
(* -1/8 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1/8 (pow im 4)) (* 1/2 (* (pow im 2) (pow re 2)))) (pow re 3))
(/ im (pow re 3))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -2 re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(* -1 re)
(* re (- (/ im re) 1))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -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 (* -1 (/ im re)))))
(* -1 (/ (+ (* -1/2 (pow im 2)) (* 1/8 (/ (pow im 4) (pow re 2)))) re))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(* (pow im 4) (- (* 1/2 (/ 1 (* (pow im 2) re))) (* 1/8 (/ 1 (pow re 3)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (- (/ re im) 1)))
Calls

6 calls:

TimeVariablePointExpression
7.0ms
re
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (- 1 (/ re im)) im) (- (sqrt (+ (* re re) (* im im))) re) (/ (* im im) re) (* (+ (* (* im (/ im (pow re 3))) -1/8) (/ 1/2 re)) (* im im)) (/ im (pow re 3)))
4.0ms
im
@0
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (- 1 (/ re im)) im) (- (sqrt (+ (* re re) (* im im))) re) (/ (* im im) re) (* (+ (* (* im (/ im (pow re 3))) -1/8) (/ 1/2 re)) (* im im)) (/ im (pow re 3)))
4.0ms
re
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (- 1 (/ re im)) im) (- (sqrt (+ (* re re) (* im im))) re) (/ (* im im) re) (* (+ (* (* im (/ im (pow re 3))) -1/8) (/ 1/2 re)) (* im im)) (/ im (pow re 3)))
4.0ms
im
@inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (- 1 (/ re im)) im) (- (sqrt (+ (* re re) (* im im))) re) (/ (* im im) re) (* (+ (* (* im (/ im (pow re 3))) -1/8) (/ 1/2 re)) (* im im)) (/ im (pow re 3)))
4.0ms
im
@-inf
((* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (* (- 1 (/ re im)) im) (- (sqrt (+ (* re re) (* im im))) re) (/ (* im im) re) (* (+ (* (* im (/ im (pow re 3))) -1/8) (/ 1/2 re)) (* im im)) (/ im (pow re 3)))

simplify155.0ms (2.1%)

Memory
10.2MiB live, 193.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05512736
119412582
082552458
Stop Event
iter limit
node limit
Counts
102 → 101
Calls
Call 1
Inputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(* -1/2 (/ (pow im 2) re))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/ (pow im 2) re)
(* -1/8 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1/8 (pow im 4)) (* 1/2 (* (pow im 2) (pow re 2)))) (pow re 3))
(/ im (pow re 3))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -2 re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(* -1 re)
(* re (- (/ im re) 1))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -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 (* -1 (/ im re)))))
(* -1 (/ (+ (* -1/2 (pow im 2)) (* 1/8 (/ (pow im 4) (pow re 2)))) re))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(* (pow im 4) (- (* 1/2 (/ 1 (* (pow im 2) re))) (* 1/8 (/ 1 (pow re 3)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (- (/ re im) 1)))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 re #s(literal -1/4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(*.f64 #s(literal -2 binary64) (-.f64 re im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (fma.f64 (*.f64 re #s(literal -1/4 binary64)) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (-.f64 (/.f64 re im) #s(literal 2 binary64))) re (*.f64 #s(literal 2 binary64) im))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) #s(literal 1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) im)) re) #s(literal 1 binary64)) re im)
(* -1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal -2 binary64))) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* -1/8 (/ (pow im 4) (pow re 3)))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))))
(/ (+ (* -1/8 (pow im 4)) (* 1/2 (* (pow im 2) (pow re 2)))) (pow re 3))
(/.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) re) re (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64))) (pow.f64 re #s(literal 3 binary64)))
(/ im (pow re 3))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 (*.f64 im im) re))
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) re)
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) re)
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(*.f64 (-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64)) #s(literal 2 binary64)) re)
(* -1 re)
(neg.f64 re)
(* re (- (/ im re) 1))
(*.f64 (-.f64 (/.f64 im re) #s(literal 1 binary64)) re)
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1 binary64))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1 binary64))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im) (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal -1 binary64))) #s(literal -2 binary64))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -1 (* re (+ 2 (* 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 2 binary64)))
(* -1 (* re (+ 2 (+ (* -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 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))))
(* -1 (* re (+ 1 (* -1 (/ im re)))))
(*.f64 (neg.f64 re) (-.f64 #s(literal 1 binary64) (/.f64 im re)))
(* -1 (/ (+ (* -1/2 (pow im 2)) (* 1/8 (/ (pow im 4) (pow re 2)))) re))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) im) im (*.f64 (/.f64 #s(literal 1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) im) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/32 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re)))) (*.f64 im im))) (*.f64 im im))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re)))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) im) im)
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/64 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.f64 (*.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)) im) im)
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -5/128 binary64) (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.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))
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.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) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 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)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (*.f64 re (/.f64 re im)) (/.f64 #s(literal 1/2 binary64) im) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.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 re im)) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (/.f64 re im)) im)
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 #s(literal -2 binary64) im) (/.f64 re im) (/.f64 #s(literal -1/2 binary64) re)) (*.f64 im im))
(* (pow im 4) (- (* 1/2 (/ 1 (* (pow im 2) re))) (* 1/8 (/ 1 (pow re 3)))))
(*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im im) re)) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) re (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/16 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64)) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) im)) (neg.f64 im))
(* -1 (* im (- (/ re im) 1)))
(*.f64 (-.f64 (/.f64 re im) #s(literal 1 binary64)) (neg.f64 im))

rewrite444.0ms (6.1%)

Memory
-54.9MiB live, 191.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043322
075322
1223322
21457322
08294322
Stop Event
iter limit
node limit
iter limit
Counts
21 → 295
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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)))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 im im) re)
(*.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))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (pow.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) (fma.f64 re re (*.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (-.f64 re (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (fma.f64 (-.f64 re (-.f64 (hypot.f64 im re) re)) (-.f64 re (-.f64 (hypot.f64 im re) re)) (*.f64 (hypot.f64 im re) (-.f64 re (-.f64 (hypot.f64 im re) re))))))
(/.f64 (+.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (neg.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (neg.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (hypot.f64 im re) re) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))) (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))))
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
(-.f64 (hypot.f64 im re) (-.f64 re (-.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))) (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (/.f64 (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (/.f64 (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re)) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re))) (/.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re))))
(+.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))) (/.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(+.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (fma.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (*.f64 (+.f64 (hypot.f64 im re) re) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 im re) re)
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 (neg.f64 (neg.f64 re)) (neg.f64 re)) (+.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 (neg.f64 re) re) (+.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re (neg.f64 re)) (+.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(/.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(+.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(literal 2 binary64))))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)))
(*.f64 re (neg.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (-.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (*.f64 re #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 re #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (*.f64 #s(literal -2 binary64) (neg.f64 re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -2 binary64) (neg.f64 re)) (*.f64 #s(literal -2 binary64) (neg.f64 re)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 #s(literal -2 binary64) (neg.f64 re))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (*.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (fma.f64 (*.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re) (-.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64))) #s(literal 4 binary64)) (neg.f64 re))) (neg.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 #s(literal 8 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))) (neg.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (/.f64 #s(literal 2 binary64) re)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64))) #s(literal 4 binary64)))) (neg.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 8 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (-.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (/.f64 #s(literal 2 binary64) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64))) #s(literal 4 binary64)) (neg.f64 re)) (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) #s(literal 2 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal 8 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re)) (-.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (/.f64 #s(literal 2 binary64) re))))
(/.f64 (*.f64 (neg.f64 re) (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64))) #s(literal 4 binary64))) (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) #s(literal 2 binary64)))
(/.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 8 binary64) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))))) (-.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (/.f64 #s(literal 2 binary64) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(/.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(neg.f64 (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) re))
(fma.f64 (/.f64 (neg.f64 re) (neg.f64 (neg.f64 re))) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 (neg.f64 re))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (neg.f64 re) (neg.f64 re)) (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 re)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 (neg.f64 re))) (/.f64 (neg.f64 re) (neg.f64 (neg.f64 re))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 re)) (/.f64 (neg.f64 re) (neg.f64 re)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (*.f64 (neg.f64 re) (/.f64 (*.f64 im im) re)) (/.f64 #s(literal 1/2 binary64) re) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (*.f64 (neg.f64 re) (/.f64 #s(literal 1/2 binary64) re)) (/.f64 (*.f64 im im) re) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (/.f64 (neg.f64 re) re) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) (neg.f64 re) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 (*.f64 im im) re) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (neg.f64 re)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 (/.f64 (*.f64 im im) re) (neg.f64 re)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (neg.f64 re) (*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 (neg.f64 re) #s(literal 2 binary64) (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(fma.f64 #s(literal 2 binary64) (neg.f64 re) (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))))
(-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 re #s(literal 2 binary64)))
(-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 #s(literal -2 binary64) (neg.f64 re)))
(-.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (neg.f64 re)) #s(literal 2 binary64)))
(+.f64 (/.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))))) (/.f64 (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))))))
(+.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))))
(/.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))))
(+.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(literal 2 binary64))))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))))
(/.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))))
(+.f64 (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))))) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 3 binary64)) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(*.f64 im (-.f64 #s(literal 1 binary64) (/.f64 re im)))
(/.f64 (neg.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) im)) (neg.f64 (+.f64 (/.f64 re im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) im)) (neg.f64 (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 im (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64))))) (neg.f64 (+.f64 (/.f64 re im) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 im (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) im) (+.f64 (/.f64 re im) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) im) (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 im (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) (+.f64 (/.f64 re im) #s(literal 1 binary64)))
(/.f64 (*.f64 im (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (/.f64 (*.f64 im im) re) (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)) (neg.f64 re)))
(*.f64 (/.f64 im re) im)
(*.f64 (neg.f64 im) (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 (neg.f64 (neg.f64 re))))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im im) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) (neg.f64 im)) (neg.f64 im))
(*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im) im)
(*.f64 (neg.f64 im) (*.f64 (neg.f64 im) (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re))))
(*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(*.f64 (*.f64 im im) (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)))
(*.f64 im (*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1/2 binary64) re)) im))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))) (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))) (-.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))) (-.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (-.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (-.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))) (*.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))) (*.f64 im im))) (neg.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (/.f64 #s(literal 1/2 binary64) re))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/512 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64))) (*.f64 im im))) (neg.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (-.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))))) (neg.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (/.f64 #s(literal 1/2 binary64) re))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/512 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (-.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64))) (*.f64 im im)) (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (/.f64 #s(literal 1/2 binary64) re)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/512 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64))) (*.f64 im im)) (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (-.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))))
(/.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (/.f64 #s(literal 1/2 binary64) re)))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/512 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (/.f64 #s(literal 1/2 binary64) re) #s(literal 3 binary64)))) (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (*.f64 (/.f64 #s(literal 1/2 binary64) re) (-.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) (neg.f64 im)) (neg.f64 im) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) (neg.f64 im)) (neg.f64 im) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) im) im (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) im) im (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(+.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(+.f64 (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(/.f64 (neg.f64 (/.f64 im (*.f64 re re))) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 im re)) (neg.f64 (*.f64 re re)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 im))) (pow.f64 re #s(literal 3 binary64)))
(/.f64 (neg.f64 (/.f64 im (pow.f64 re #s(literal 3/2 binary64)))) (neg.f64 (pow.f64 re #s(literal 3/2 binary64))))
(/.f64 (/.f64 im (pow.f64 re #s(literal 3/2 binary64))) (pow.f64 re #s(literal 3/2 binary64)))
(/.f64 (/.f64 im (*.f64 re re)) re)
(/.f64 (neg.f64 (neg.f64 im)) (pow.f64 re #s(literal 3 binary64)))
(/.f64 (/.f64 im re) (*.f64 re re))
(/.f64 (neg.f64 im) (pow.f64 re #s(literal 3 binary64)))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(neg.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))))

eval61.0ms (0.8%)

Memory
-14.5MiB live, 83.7MiB allocated
Compiler

Compiled 18 445 to 2 286 computations (87.6% saved)

prune19.0ms (0.3%)

Memory
-6.7MiB live, 40.4MiB allocated
Pruning

20 alts after pruning (18 fresh and 2 done)

PrunedKeptTotal
New38411395
Fresh5712
Picked325
Done000
Total39220412
Accuracy
99.8%
Counts
412 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
46.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
35.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
14.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (*.f64 im (/.f64 (/.f64 im (*.f64 re re)) re)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))))))
15.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
30.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
44.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
46.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
15.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) im) im))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
44.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
19.1%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)))
27.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
44.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
27.5%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
6.6%
#s(literal 0 binary64)
Compiler

Compiled 915 to 672 computations (26.6% saved)

simplify78.0ms (1.1%)

Memory
29.6MiB live, 75.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
cost-diff0
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
cost-diff0
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
cost-diff0
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
cost-diff0
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
cost-diff0
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
cost-diff0
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
cost-diff3
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
cost-diff0
(*.f64 #s(literal -4 binary64) re)
cost-diff0
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
cost-diff0
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
cost-diff0
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
cost-diff2
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
cost-diff2
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
055505
087433
1157433
2336426
3854426
42537407
55549399
08022399
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
#s(literal 1/2 binary64)
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal -2 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
#s(literal -1/2 binary64)
(*.f64 #s(literal -2 binary64) re)
#s(literal -2 binary64)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(sqrt.f64 #s(literal 1/2 binary64))
im
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
(-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) re)
(-.f64 (hypot.f64 im re) re)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 im re)
(hypot.f64 re im)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 re im) #s(literal -2 binary64)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 re im) #s(literal -2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (-.f64 re im) #s(literal -2 binary64)))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(*.f64 (-.f64 re im) #s(literal -2 binary64))
(fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))
(fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal -2 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re))))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
#s(literal -1/2 binary64)
(*.f64 #s(literal -2 binary64) re)
#s(literal -2 binary64)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(sqrt.f64 #s(literal 1/2 binary64))
im
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize177.0ms (2.5%)

Memory
-6.5MiB live, 137.2MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.170253759768442
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
accuracy0.19921875
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
accuracy0.209316259768442
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
accuracy12.971779991865192
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
accuracy4.650419255158162
(/.f64 (*.f64 im im) re)
accuracy5.729194806922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
accuracy30.20342695364965
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
accuracy3.7571306549369283
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
accuracy5.729194806922069
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
accuracy16.77746454647139
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
accuracy0.0
(*.f64 #s(literal -4 binary64) re)
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
accuracy5.729194806922069
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
accuracy30.061510802387957
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
accuracy0.01171875
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
accuracy5.729194806922069
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
accuracy8.005546280615611
(-.f64 (hypot.f64 im re) re)
accuracy8.011198122687674
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
Samples
83.0ms133×0invalid
18.0ms25×2valid
16.0ms56×0valid
15.0ms16×3valid
13.0ms26×1valid
Compiler

Compiled 380 to 43 computations (88.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 116.0ms
ival-mult: 54.0ms (46.5% of total)
ival-div: 19.0ms (16.3% of total)
ival-hypot: 14.0ms (12% of total)
ival-sqrt: 10.0ms (8.6% of total)
adjust: 6.0ms (5.2% of total)
ival-sub: 5.0ms (4.3% of total)
ival-add: 5.0ms (4.3% of total)
exact: 1.0ms (0.9% of total)
ival-neg: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series40.0ms (0.5%)

Memory
1.6MiB live, 45.0MiB allocated
Counts
23 → 160
Calls
Call 1
Inputs
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(-.f64 (hypot.f64 im re) re)
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
Outputs
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(+ (* -1 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 1)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* -4 re)
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re)))))))
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* -2 re)
(* re (- (* 2 (/ im re)) 2))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -3 re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ 2 (* -2 (/ im re)))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(- (* 2 re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* im (sqrt 1/2))
(* im (+ 2 (* -2 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(* im (+ 2 (* -1 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (/ re im))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Calls

6 calls:

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

simplify255.0ms (3.5%)

Memory
4.5MiB live, 189.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08184563
129674318
084614111
Stop Event
iter limit
node limit
Counts
160 → 158
Calls
Call 1
Inputs
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(+ (* -1 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 1)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* -4 re)
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re)))))))
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* -2 re)
(* re (- (* 2 (/ im re)) 2))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -3 re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ 2 (* -2 (/ im re)))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(- (* 2 re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* im (sqrt 1/2))
(* im (+ 2 (* -2 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(* im (+ 2 (* -1 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (/ re im))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Outputs
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(*.f64 #s(literal -2 binary64) (-.f64 re im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* -1 re) (* 2 im))
(fma.f64 #s(literal 2 binary64) im (neg.f64 re))
(+ (* 2 im) (* re (- (/ re im) 1)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 1 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re) #s(literal 1 binary64)) re (*.f64 #s(literal 2 binary64) im))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/4 binary64) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (fma.f64 (*.f64 re #s(literal 1/4 binary64)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) re))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 re #s(literal 1/2 binary64)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (-.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) #s(literal 1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re) #s(literal 1 binary64)) re im)
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) 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 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(fma.f64 (fma.f64 (/.f64 im re) (/.f64 im re) (/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (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/8 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) (/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/2 (* im (sqrt (/ 1 re))))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.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 5 binary64))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.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 5 binary64)))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 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 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 5 binary64))) #s(literal 7/256 binary64) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* im (sqrt (/ 1 re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 5 binary64))) #s(literal 7/128 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* re (- (* 2 (/ im re)) 2))
(*.f64 (-.f64 (*.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) re)
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 4 binary64)))))) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))))
(* -3 re)
(*.f64 #s(literal -3 binary64) re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64)))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))))
(* -1 (* (sqrt re) (sqrt -1)))
(*.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -3/128 binary64) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -2 (* (sqrt re) (sqrt -1)))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -3/64 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) #s(literal 2 binary64)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 re))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ 2 (* -2 (/ im re)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (+ (* -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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (+.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 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (neg.f64 im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (neg.f64 im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) #s(literal -5/64 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(- (* 2 re) re)
(-.f64 (*.f64 #s(literal 2 binary64) re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(-.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 im im) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (-.f64 (*.f64 #s(literal 2 binary64) re) re))
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (-.f64 (*.f64 #s(literal 2 binary64) re) re))
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 im im) #s(literal 7/256 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -33/2048 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 13 binary64)))) (*.f64 #s(literal 7/256 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im)
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -33/1024 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 13 binary64)))) (*.f64 #s(literal 7/128 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/32 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (*.f64 im im))) (*.f64 im im))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 im 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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -5/128 binary64) (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (/.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))
(* im (sqrt 1/2))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) im)
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)))) im)
(* im (+ 2 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 re im)) im)
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (-.f64 #s(literal 2 binary64) (/.f64 re im))) im)
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) (/.f64 re im)) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.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) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 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)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.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) (*.f64 (sqrt.f64 #s(literal 2 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)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)))) im)
(* im (+ 1 (* -1 (/ re im))))
(fma.f64 (neg.f64 im) (/.f64 re im) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.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 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (/.f64 re im)) im)
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 (* im (+ 2 (/ re im))))
(*.f64 (neg.f64 im) (+.f64 (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (-.f64 (/.f64 (*.f64 (neg.f64 re) re) im) re) im)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im)) re) im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 im) (fma.f64 (*.f64 re re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64)))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (fma.f64 (*.f64 re re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -1 binary64)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -1 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) re (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/16 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/2 binary64))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/2 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/8 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(*.f64 (neg.f64 im) (-.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (/.f64 (*.f64 re re) im) #s(literal -1/2 binary64)) re) im)))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) im)))

rewrite260.0ms (3.6%)

Memory
-3.1MiB live, 144.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055419
087347
1290343
21922331
08291327
Stop Event
iter limit
node limit
iter limit
Counts
23 → 279
Calls
Call 1
Inputs
(-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
(sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(-.f64 (hypot.f64 im re) re)
(/.f64 (*.f64 im im) re)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
Outputs
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (neg.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (neg.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))) (*.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))) (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 re im) re) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (hypot.f64 re im) re) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (+.f64 (hypot.f64 re im) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (+.f64 (hypot.f64 re im) re) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (+.f64 (hypot.f64 re im) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (+.f64 (hypot.f64 re im) re) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (-.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 re im) re))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 re im))) (sqrt.f64 (neg.f64 (hypot.f64 re im))) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 re im)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 re im)) #s(literal 1/2 binary64)) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(-.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))))
(-.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))))
(-.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) re)
(-.f64 (hypot.f64 re im) (+.f64 (-.f64 re (hypot.f64 re im)) re))
(-.f64 (hypot.f64 re im) (-.f64 re (-.f64 (hypot.f64 re im) re)))
(+.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) (-.f64 (-.f64 (hypot.f64 re im) re) re))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 re (hypot.f64 re im)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))) (*.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (pow.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re re (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) re)))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (*.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (pow.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (+.f64 (hypot.f64 re im) re) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (+.f64 (hypot.f64 re im) re) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 re im) re) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 re (hypot.f64 re im)) #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im)))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 re im) re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 re im) re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 re im))) (sqrt.f64 (neg.f64 (hypot.f64 re im))) (-.f64 (hypot.f64 re im) re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (-.f64 (hypot.f64 re im) re))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 re im)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 re im)) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 re im) re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 re im) re))
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
(-.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))))
(-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im)))
(+.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(+.f64 (-.f64 (hypot.f64 re im) re) (hypot.f64 re im))
(+.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3/2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (neg.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (fma.f64 re (-.f64 (hypot.f64 re im) (-.f64 (-.f64 re (hypot.f64 re im)) re)) (pow.f64 (-.f64 (hypot.f64 re im) (-.f64 re (hypot.f64 re im))) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (neg.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
(*.f64 re #s(literal -4 binary64))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)
(*.f64 im (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)) #s(literal 4 binary64)) im)) (neg.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal -8 binary64) #s(literal 8 binary64)) im)) (neg.f64 (fma.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))))))
(/.f64 (neg.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)) #s(literal 4 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal -8 binary64) #s(literal 8 binary64)))) (neg.f64 (fma.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)) #s(literal 4 binary64)) im) (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal -8 binary64) #s(literal 8 binary64)) im) (fma.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64)))))
(/.f64 (*.f64 im (-.f64 (pow.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)) #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) #s(literal 2 binary64)))
(/.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal -8 binary64) #s(literal 8 binary64))) (fma.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64)))))
(fma.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) im (*.f64 #s(literal 2 binary64) im))
(fma.f64 #s(literal 2 binary64) im (*.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) im))
(fma.f64 im (*.f64 #s(literal -2 binary64) (/.f64 re im)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 im #s(literal 2 binary64) (*.f64 im (*.f64 #s(literal -2 binary64) (/.f64 re im))))
(+.f64 (*.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) im) (*.f64 #s(literal 2 binary64) im))
(+.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (*.f64 #s(literal -2 binary64) (/.f64 re im)) im))
(+.f64 (*.f64 im (*.f64 #s(literal -2 binary64) (/.f64 re im))) (*.f64 im #s(literal 2 binary64)))
(+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im (*.f64 #s(literal -2 binary64) (/.f64 re im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))))
(*.f64 (neg.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))))
(/.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -2 binary64) re))))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 im #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1/2 binary64)))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 re #s(literal -1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 im #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1/2 binary64))) (*.f64 im (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 im #s(literal 1 binary64)))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64)))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1/2 binary64))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 im (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1 binary64)) (sqrt.f64 re))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 re im) re)
(*.f64 (/.f64 im re) im)
(*.f64 (neg.f64 im) (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 (neg.f64 (neg.f64 re))))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im im) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (/.f64 (*.f64 im im) re))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))

eval66.0ms (0.9%)

Memory
15.0MiB live, 59.0MiB allocated
Compiler

Compiled 19 449 to 2 432 computations (87.5% saved)

prune89.0ms (1.2%)

Memory
-43.2MiB live, 29.7MiB allocated
Pruning

18 alts after pruning (13 fresh and 5 done)

PrunedKeptTotal
New4289437
Fresh9413
Picked235
Done022
Total43918457
Accuracy
99.9%
Counts
457 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
35.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
15.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
44.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
44.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
46.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
44.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
27.7%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
27.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
27.6%
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
27.5%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
6.6%
#s(literal 0 binary64)
Compiler

Compiled 746 to 497 computations (33.4% saved)

simplify107.0ms (1.5%)

Memory
9.1MiB live, 56.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 4 (0.0ms)

IterNodesCost
053525
080419
1148397
2313392
3803392
42340377
54836377
66820377
08022377
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
#s(literal 1/2 binary64)
(sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re))
(-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
(+.f64 (hypot.f64 re im) (hypot.f64 re im))
(hypot.f64 re im)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(literal 1/2 binary64)
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 im)
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
#s(literal -1/2 binary64)
(*.f64 #s(literal -2 binary64) re)
#s(literal -2 binary64)
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))
(-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
(-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) re)
(+.f64 (hypot.f64 re im) (hypot.f64 re im))
(*.f64 #s(literal 2 binary64) (hypot.f64 im re))
(hypot.f64 re im)
(hypot.f64 im re)
re
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 im)
im
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re))))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))
#s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re)))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) im) im (*.f64 #s(literal -2 binary64) re))
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
#s(literal -1/2 binary64)
(*.f64 #s(literal -2 binary64) re)
#s(literal -2 binary64)

localize250.0ms (3.5%)

Memory
-11.4MiB live, 129.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
accuracy0.1328125
(*.f64 (/.f64 im re) im)
accuracy5.733101056922069
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
accuracy42.767341017045844
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
accuracy0.07421875
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy5.733101056922069
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
accuracy35.33433674494684
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
accuracy0.4677925293053261
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
accuracy35.418903587762536
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
accuracy0.0
(*.f64 #s(literal 2 binary64) im)
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
accuracy5.733101056922069
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
accuracy35.7702617703932
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
accuracy0.06640625
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
accuracy5.733101056922069
(sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re))
accuracy8.015104372687674
(-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)
Samples
93.0ms174×0valid
41.0ms27×1valid
22.0ms29×2valid
21.0ms20×3valid
7.0ms4valid
Compiler

Compiled 432 to 44 computations (89.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 114.0ms
ival-sub: 37.0ms (32.5% of total)
ival-mult: 22.0ms (19.3% of total)
ival-hypot: 16.0ms (14.1% of total)
adjust: 12.0ms (10.6% of total)
ival-sqrt: 11.0ms (9.7% of total)
ival-div: 7.0ms (6.2% of total)
ival-add: 7.0ms (6.2% of total)
ival-neg: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series18.0ms (0.2%)

Memory
19.0MiB live, 19.0MiB allocated
Counts
23 → 186
Calls
Call 1
Inputs
(-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)
(+.f64 (hypot.f64 re im) (hypot.f64 re im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
(sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
(*.f64 (/.f64 im re) im)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
Outputs
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(+ (* 2 im) (/ (pow re 2) im))
(+ (* 2 im) (* (pow re 2) (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (* 2 im) (* (pow re 2) (+ (* (pow re 2) (- (* 1/8 (/ (pow re 2) (pow im 5))) (* 1/4 (/ 1 (pow im 3))))) (/ 1 im))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(+ (* -1 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 1)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(/ (pow im 2) re)
(* -1/2 (/ (pow im 2) re))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 2 re)
(* re (+ 2 (/ (pow im 2) (pow re 2))))
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re)))))))
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(/ (pow re 2) im)
(* (pow re 2) (- (/ 1 im) (* 2 (/ 1 re))))
(* (pow re 2) (- (+ (* 2 (/ im (pow re 2))) (/ 1 im)) (* 2 (/ 1 re))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* -2 re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -3 re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(+ (* 2 re) (/ (pow im 2) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(/ (+ (* -2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(- (* 2 re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(* im (+ 2 (* -2 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(* im (+ 2 (/ (pow re 2) (pow im 2))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* im (+ 2 (* -1 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (/ (pow re 2) (pow im 2)))))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2)))))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) im)) 2)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (+ 2 (/ re im))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
Calls

6 calls:

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

simplify183.0ms (2.5%)

Memory
-20.2MiB live, 215.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08775049
131694806
082304556
Stop Event
iter limit
node limit
Counts
186 → 184
Calls
Call 1
Inputs
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(+ (* 2 im) (/ (pow re 2) im))
(+ (* 2 im) (* (pow re 2) (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (* 2 im) (* (pow re 2) (+ (* (pow re 2) (- (* 1/8 (/ (pow re 2) (pow im 5))) (* 1/4 (/ 1 (pow im 3))))) (/ 1 im))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(+ (* -1 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 1)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(/ (pow im 2) re)
(* -1/2 (/ (pow im 2) re))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 2 re)
(* re (+ 2 (/ (pow im 2) (pow re 2))))
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 re)))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re))))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 re)))))))
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(/ (pow re 2) im)
(* (pow re 2) (- (/ 1 im) (* 2 (/ 1 re))))
(* (pow re 2) (- (+ (* 2 (/ im (pow re 2))) (/ 1 im)) (* 2 (/ 1 re))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
re
(* re (+ 1 (/ (pow im 2) (pow re 2))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* -2 re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -3 re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(+ (* 2 re) (/ (pow im 2) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(/ (+ (* -2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 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) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(- (* 2 re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(* im (+ 2 (* -2 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(* im (+ 2 (/ (pow re 2) (pow im 2))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* im (+ 2 (* -1 (/ re im))))
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (/ (pow re 2) (pow im 2)))))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2)))))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) im)) 2)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (+ 2 (/ re im))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
Outputs
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(*.f64 #s(literal -2 binary64) (-.f64 re im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (pow.f64 im #s(literal 3 binary64))) re (-.f64 (/.f64 re im) #s(literal 2 binary64))) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (/ (pow re 2) im))
(fma.f64 #s(literal 2 binary64) im (/.f64 (*.f64 re re) im))
(+ (* 2 im) (* (pow re 2) (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re) (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* (pow re 2) (+ (* (pow re 2) (- (* 1/8 (/ (pow re 2) (pow im 5))) (* 1/4 (/ 1 (pow im 3))))) (/ 1 im))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re) (*.f64 #s(literal 2 binary64) im))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/2 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) re (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 re (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) re (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/4 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/4 binary64))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/32 binary64))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (-.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) #s(literal 1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re) #s(literal 1 binary64)) re im)
(+ (* -1 re) (* 2 im))
(fma.f64 #s(literal 2 binary64) im (neg.f64 re))
(+ (* 2 im) (* re (- (/ re im) 1)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 1 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 1)))
(fma.f64 (fma.f64 (/.f64 (*.f64 (*.f64 re re) #s(literal -1/4 binary64)) (pow.f64 im #s(literal 3 binary64))) re (-.f64 (/.f64 re im) #s(literal 1 binary64))) re (*.f64 #s(literal 2 binary64) im))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* -1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64))
(/ (+ (* -2 (pow re 2)) (* -1/2 (pow im 2))) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal -1/2 binary64) (*.f64 (*.f64 re re) #s(literal -2 binary64))) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) re)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* re (+ 2 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64)) re)
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64))) re)
(* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(* 1/2 (* im (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* im (sqrt (/ 1 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 5 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 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 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/256 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* im (sqrt (/ 1 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 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 5 binary64))) #s(literal 7/256 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* im (sqrt (/ 1 re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 5 binary64))) #s(literal 7/128 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(/ (pow re 2) im)
(/.f64 (*.f64 re re) im)
(* (pow re 2) (- (/ 1 im) (* 2 (/ 1 re))))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 2 binary64) re)) (*.f64 re re))
(* (pow re 2) (- (+ (* 2 (/ im (pow re 2))) (/ 1 im)) (* 2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 #s(literal 2 binary64) re) (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 2 binary64) re))) (*.f64 re re))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal 1/64 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/1024 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/64 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/512 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 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 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(fma.f64 (fma.f64 (/.f64 im re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (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/8 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 2))
(*.f64 (-.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) re) (/.f64 (*.f64 im im) re)) #s(literal 2 binary64)) re)
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -1 (* re (+ 2 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -1 (* (sqrt re) (sqrt -1)))
(*.f64 (neg.f64 (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/128 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (sqrt -1)))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -3/128 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -2 (* (sqrt re) (sqrt -1)))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -3/64 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(*.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64)) re) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/64 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/32 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (+ (* -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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (+.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 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -3 re)
(*.f64 #s(literal -3 binary64) re)
(* -1 (* re (+ 3 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64)))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (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/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64))))
(* -1 (* re (+ 3 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 3 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) #s(literal -5/64 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(+ (* 2 re) (/ (pow im 2) re))
(fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(* im (+ (* -1/16 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (sqrt (/ 1 re)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 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) re)) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* 7/256 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/256 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (sqrt (/ 1 re))) (* (pow im 2) (+ (* -1/16 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/2048 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/256 (sqrt (/ 1 (pow re 9))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -33/2048 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 13 binary64)))) (*.f64 #s(literal 7/256 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))) im)
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -33/1024 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 13 binary64)))) (*.f64 #s(literal 7/128 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(/ (+ (* -2 (* im re)) (pow re 2)) im)
(/.f64 (*.f64 re (fma.f64 #s(literal -2 binary64) im re)) im)
(/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)
(/.f64 (fma.f64 (*.f64 #s(literal -2 binary64) (-.f64 re im)) im (*.f64 re re)) im)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (*.f64 im im) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64))))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/16 binary64)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 im im) (/.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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -5/128 binary64) (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.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))
(- (* 2 re) re)
(-.f64 (*.f64 #s(literal 2 binary64) re) re)
(- (+ (* 2 re) (/ (pow im 2) re)) re)
(-.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 im im) re)) re)
(- (+ (* 2 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))) re)
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (-.f64 (*.f64 #s(literal 2 binary64) re) re))
(- (+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))) re)
(fma.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (-.f64 (*.f64 #s(literal 2 binary64) re) re))
(+ (* -2 re) (* -1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) im)
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)))) im)
(* im (+ 2 (/ (pow re 2) (pow im 2))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (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/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 im #s(literal 6 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (/.f64 re (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)))) im)
(* im (+ 1 (* -1 (/ re im))))
(-.f64 im (*.f64 (/.f64 re im) im))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (*.f64 (/.f64 re im) (/.f64 re im)) #s(literal 1/2 binary64) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.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 #s(literal 1/2 binary64) im) (/.f64 (*.f64 re re) im) #s(literal 1 binary64))) (/.f64 re im)) im)
(* im (+ 2 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 re im)) im)
(* im (- (+ 2 (/ (pow re 2) (pow im 2))) (/ re im)))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (-.f64 #s(literal 2 binary64) (/.f64 re im))) im)
(* im (- (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) (/.f64 re im)) im)
(* (pow im 2) (- (* -2 (/ re (pow im 2))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 #s(literal -2 binary64) im) (/.f64 re im) (/.f64 #s(literal -1/2 binary64) re)) (*.f64 im im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 (* im (+ 2 (/ (pow re 2) (pow im 2)))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (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/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))))
(* -1 (* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 1/8 (/ (pow re 6) (pow im 6))) (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (+.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/4 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 im)) (fma.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (pow.f64 im #s(literal 3 binary64))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (fma.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(*.f64 (neg.f64 (*.f64 (sqrt.f64 im) #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(*.f64 (neg.f64 im) (-.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)))
(* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) im)) 2)))
(*.f64 (neg.f64 im) (-.f64 (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 re re) im)) (neg.f64 im)) #s(literal 2 binary64)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/16 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/8 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)) re) im)))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) im)))
(* -1 (* im (+ 2 (/ re im))))
(*.f64 (neg.f64 im) (+.f64 (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (pow re 2) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (-.f64 (/.f64 (*.f64 (neg.f64 re) re) im) re) im)))
(* -1 (* im (+ 2 (* -1 (/ (- (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) re) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im)) re) im)))

rewrite246.0ms (3.4%)

Memory
4.1MiB live, 192.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053459
080350
1317324
22319324
08543320
Stop Event
iter limit
node limit
iter limit
Counts
23 → 442
Calls
Call 1
Inputs
(-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)
(+.f64 (hypot.f64 re im) (hypot.f64 re im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
(sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))
(-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re)
(*.f64 (/.f64 im re) im)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
Outputs
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (hypot.f64 im re) re) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (+.f64 (hypot.f64 im re) re) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) re)))
(/.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 8 binary64))) (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) re)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re))
(/.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re))
(/.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(-.f64 (/.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)) (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re)) (/.f64 (*.f64 re re) (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re)))
(-.f64 (/.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)))))
(-.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re)
(-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) re))
(-.f64 (hypot.f64 im re) (+.f64 (-.f64 re (hypot.f64 im re)) re))
(-.f64 (hypot.f64 im re) (-.f64 re (-.f64 (hypot.f64 im re) re)))
(+.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))
(+.f64 (hypot.f64 im re) (-.f64 (-.f64 (hypot.f64 im re) re) re))
(+.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re)))
(*.f64 (neg.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(*.f64 (fabs.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64))) (hypot.f64 im re))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64)) #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3/2 binary64)) (pow.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3/2 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))
(*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 3/2 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) #s(literal 3/2 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 3/2 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3/2 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 3/2 binary64)))
(*.f64 #s(literal 512 binary64) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)))
(*.f64 #s(literal 16 binary64) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)))
(*.f64 #s(literal 64 binary64) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))
(*.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) #s(literal 8 binary64))
(*.f64 #s(literal 4 binary64) (pow.f64 (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 2 binary64)))
(*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(*.f64 #s(literal 8 binary64) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))
(*.f64 #s(literal 8 binary64) (pow.f64 (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3 binary64)))
(*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))
(*.f64 #s(literal 2 binary64) (fabs.f64 (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(*.f64 #s(literal 2 binary64) (hypot.f64 im re))
(*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(*.f64 (hypot.f64 im re) #s(literal 2 binary64))
(pow.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 2 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 5 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 9/2 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 9 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 6 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 3/2 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 4 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 3 binary64))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fabs.f64 (*.f64 #s(literal 0 binary64) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) #s(literal 0 binary64))
(/.f64 (fabs.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (fabs.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (fabs.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (fabs.f64 (neg.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fabs.f64 (*.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (fabs.f64 (*.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fabs.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 0 binary64))) (fabs.f64 (*.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 0 binary64))))
(/.f64 (fabs.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (fabs.f64 (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (fabs.f64 (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)))) (fabs.f64 (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64))))
(/.f64 (fabs.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fabs.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (pow.f64 (*.f64 #s(literal 0 binary64) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3 binary64)) #s(literal 0 binary64))
(/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3 binary64)) (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))
(/.f64 (pow.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))
(/.f64 (pow.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (neg.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64)))
(/.f64 (pow.f64 (*.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64)))
(/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 0 binary64)) #s(literal 3 binary64)))
(/.f64 (pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal 3 binary64)))
(/.f64 (pow.f64 (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64))) #s(literal 3 binary64)) (pow.f64 (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) #s(literal 3 binary64)))
(/.f64 (*.f64 #s(literal 0 binary64) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 0 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (*.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 0 binary64)) (*.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 0 binary64)))
(/.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64))) (pow.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)))
(/.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (hypot.f64 im re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (hypot.f64 im re))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (hypot.f64 im re) (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (hypot.f64 im re)))
(fma.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 0 binary64)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 0 binary64)))
(fabs.f64 (neg.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(fabs.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (sqrt.f64 (neg.f64 (hypot.f64 im re))))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 3/2 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(+.f64 (cosh.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (sinh.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(+.f64 (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (*.f64 (hypot.f64 im re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(+.f64 (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (hypot.f64 im re)) (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (hypot.f64 im re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(+.f64 (hypot.f64 im re) (hypot.f64 im re))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) re))))
(/.f64 (sqrt.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 8 binary64)))) (sqrt.f64 (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 #s(literal 2 binary64) re))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3/2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (sqrt.f64 (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (sqrt.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (fma.f64 re (+.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) re) (pow.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (neg.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (*.f64 im im) (*.f64 im im))) (fabs.f64 (-.f64 im im)))
(/.f64 (fabs.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fabs.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (-.f64 im im))
(/.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 im))) (sqrt.f64 (neg.f64 (neg.f64 im))) im)
(fma.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 im)) im)
(fma.f64 (sqrt.f64 im) (sqrt.f64 im) im)
(sqrt.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)))
(fabs.f64 (neg.f64 (*.f64 #s(literal 2 binary64) im)))
(fabs.f64 (*.f64 #s(literal 2 binary64) im))
(+.f64 im im)
(*.f64 #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im))))
#s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im)))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (*.f64 im im) (*.f64 im im))) (sqrt.f64 (-.f64 im im)))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3/2 binary64)) (pow.f64 im #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) im))
(hypot.f64 (sqrt.f64 (neg.f64 (neg.f64 im))) (sqrt.f64 (neg.f64 (neg.f64 im))))
(hypot.f64 (sqrt.f64 (neg.f64 (neg.f64 im))) (sqrt.f64 (neg.f64 im)))
(hypot.f64 (sqrt.f64 (neg.f64 (neg.f64 im))) (sqrt.f64 im))
(hypot.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 (neg.f64 im))))
(hypot.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 im)))
(hypot.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 im))
(hypot.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 (neg.f64 im))))
(hypot.f64 (sqrt.f64 im) (sqrt.f64 (neg.f64 im)))
(hypot.f64 (sqrt.f64 im) (sqrt.f64 im))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 1/2 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (log.f64 im) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (neg.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(exp.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))))
#s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (-.f64 im im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 im im)))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 im im)))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re) (-.f64 im im) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 (*.f64 im im) (*.f64 im im)))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 im im)))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (-.f64 im im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 im im) (*.f64 im im)))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 im im)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))) (-.f64 im im) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 (*.f64 im im) (*.f64 im im)))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 im im)))
(/.f64 (fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im)))))
(/.f64 (fma.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 im im) (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) (*.f64 (-.f64 im im) (+.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 im im) (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re))) (*.f64 (-.f64 im im) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 im im) (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))))) (*.f64 (-.f64 im im) (+.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 (*.f64 im im) (*.f64 im im)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 im im) (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))))) (*.f64 (-.f64 im im) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (+.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (+.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 (+.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))))) (*.f64 (fma.f64 im im (-.f64 (*.f64 im im) (*.f64 im im))) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64))) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)) (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -8 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 #s(literal -2 binary64) im) #s(literal 2 binary64)) (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 im))) (sqrt.f64 (neg.f64 (neg.f64 im))) (+.f64 im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(fma.f64 (sqrt.f64 (neg.f64 im)) (sqrt.f64 (neg.f64 im)) (+.f64 im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(fma.f64 (sqrt.f64 im) (sqrt.f64 im) (+.f64 im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(fma.f64 #s(literal 2 binary64) im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(fma.f64 im #s(literal 2 binary64) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(fma.f64 re (-.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) im))
(-.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(-.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 (neg.f64 im) #s(literal 2 binary64)))
(-.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 #s(literal -2 binary64) im))
(-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (neg.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64))) re))
(-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (neg.f64 re) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)
(+.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(+.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 #s(literal 2 binary64) im))
(+.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(+.f64 im (+.f64 im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))))
(*.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))))
(/.f64 (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64))) (-.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))))
(/.f64 (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(literal 2 binary64)))))
(+.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re)))))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (*.f64 (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (+.f64 (hypot.f64 im re) re) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (+.f64 (hypot.f64 im re) re) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fma.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (+.f64 (hypot.f64 im re) re) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 im re) re) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (hypot.f64 im re) re) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (+.f64 (hypot.f64 im re) (-.f64 re (hypot.f64 im re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) (-.f64 re (hypot.f64 im re))))))
(/.f64 (neg.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))))
(/.f64 (neg.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (*.f64 re re)) (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re))
(/.f64 (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)))
(/.f64 (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64))) (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 im re) re))
(fma.f64 (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (-.f64 (hypot.f64 im re) re))
(fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 im re))) (sqrt.f64 (neg.f64 (hypot.f64 im re))) (-.f64 (hypot.f64 im re) re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (-.f64 (hypot.f64 im re) re))
(fma.f64 (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 im re)) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 im re) re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (-.f64 (hypot.f64 im re) re))
(-.f64 (/.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re)) (/.f64 (*.f64 re re) (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re)))
(-.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))))
(-.f64 (/.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (fma.f64 re (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) re)
(-.f64 (hypot.f64 im re) (-.f64 re (hypot.f64 im re)))
(+.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re))
(+.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re))
(*.f64 (neg.f64 im) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im im) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 im im) re)
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(fabs.f64 (*.f64 (/.f64 im re) im))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64)))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 3 binary64)) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 8 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) (*.f64 #s(literal 2 binary64) re)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal 2 binary64) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal 2 binary64) re)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal -2 binary64)) re))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal -2 binary64) re))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (/.f64 im re) (*.f64 #s(literal -1/2 binary64) im) (*.f64 #s(literal -2 binary64) re))
(fma.f64 im (*.f64 (/.f64 im re) #s(literal -1/2 binary64)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 re #s(literal -2 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal 2 binary64) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal 2 binary64) re))))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) (*.f64 (neg.f64 re) #s(literal -2 binary64)))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) (*.f64 #s(literal 2 binary64) re))
(-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 (neg.f64 (*.f64 (/.f64 im re) im)) #s(literal -1/2 binary64)))
(-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 (neg.f64 (/.f64 im re)) (*.f64 #s(literal -1/2 binary64) im)))
(-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))) (/.f64 (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -2 binary64) re) (-.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))))
(+.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)) (*.f64 #s(literal -2 binary64) re))
(+.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))

eval117.0ms (1.6%)

Memory
42.5MiB live, 133.6MiB allocated
Compiler

Compiled 26 836 to 3 614 computations (86.5% saved)

prune118.0ms (1.6%)

Memory
-24.6MiB live, 77.2MiB allocated
Pruning

18 alts after pruning (11 fresh and 7 done)

PrunedKeptTotal
New6327639
Fresh448
Picked325
Done055
Total63918657
Accuracy
99.9%
Counts
657 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re)))
6.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64)) re)) re) re)))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
78.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
35.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
47.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
15.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
44.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
44.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
46.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
32.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
44.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
27.7%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
27.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
27.5%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
27.6%
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
6.6%
#s(literal 0 binary64)
Compiler

Compiled 1 565 to 573 computations (63.4% saved)

regimes122.0ms (1.7%)

Memory
-24.8MiB live, 119.9MiB allocated
Counts
45 → 2
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re im)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64)) re)) re) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (*.f64 im (/.f64 (/.f64 im (*.f64 re re)) re)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) im) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.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))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (+.f64 (-.f64 (hypot.f64 im re) re) (hypot.f64 im re)) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (+.f64 (hypot.f64 re im) (hypot.f64 re im)) re) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) re) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 3 binary64))))))))
Outputs
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re)))
Calls

7 calls:

26.0ms
re
14.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
12.0ms
im
10.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
10.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
78.3%1(*.f64 im im)
92.1%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
92.1%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
90.9%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
90.9%2(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
88.8%2re
78.3%1im
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes18.0ms (0.2%)

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

2 calls:

8.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
8.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
92.1%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
92.1%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes79.0ms (1.1%)

Memory
-26.0MiB live, 114.0MiB allocated
Counts
34 → 3
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re im)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 2 binary64)) re)) re) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (fma.f64 (*.f64 im (/.f64 (/.f64 im (*.f64 re re)) re)) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re)))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
Calls

7 calls:

19.0ms
im
18.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.0ms
re
8.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
62.6%3im
62.6%3(*.f64 im im)
78.9%3re
72.9%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
72.9%3(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
74.4%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
74.4%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes7.0ms (0.1%)

Memory
18.4MiB live, 18.4MiB allocated
Counts
23 → 3
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re im)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
Calls

1 calls:

6.0ms
re
Results
AccuracySegmentsBranch
78.9%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes5.0ms (0.1%)

Memory
12.0MiB live, 12.0MiB allocated
Counts
15 → 3
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))
Calls

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
78.8%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes5.0ms (0.1%)

Memory
10.4MiB live, 10.4MiB allocated
Counts
13 → 3
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* 1/2 (sqrt (- (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) re))) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
#s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Calls

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
78.8%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes20.0ms (0.3%)

Memory
-10.5MiB live, 38.3MiB allocated
Counts
11 → 3
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (*.f64 #s(literal 2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 #s(approx (- (+ (sqrt (+ (* re re) (* im im))) (sqrt (+ (* re re) (* im im)))) re) (fma.f64 #s(literal 2 binary64) im (neg.f64 re))) re)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
#s(literal 0 binary64)
Calls

5 calls:

7.0ms
re
3.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
3.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
3.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
3.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
47.8%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
47.8%1(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
47.8%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
47.8%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
66.4%3re
Compiler

Compiled 51 to 40 computations (21.6% saved)

regimes11.0ms (0.1%)

Memory
-21.1MiB live, 24.6MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
Outputs
#s(literal 0 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im))))
Calls

7 calls:

3.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
1.0ms
re
1.0ms
im
1.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
1.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
44.7%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
44.7%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
44.7%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
44.7%1(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
44.7%1(*.f64 im im)
47.0%2im
46.5%2re
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes7.0ms (0.1%)

Memory
21.6MiB live, 21.6MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(literal 0 binary64)
Outputs
#s(literal 0 binary64)
Calls

7 calls:

1.0ms
im
1.0ms
re
1.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
1.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
1.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
6.6%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
6.6%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
6.6%1(*.f64 im im)
6.6%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
6.6%1(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
6.6%1re
6.6%1im
Compiler

Compiled 55 to 45 computations (18.2% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
8.800510413657779e-305
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
8.800510413657779e-305
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch48.0ms (0.7%)

Memory
17.1MiB live, 105.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
3.1896786448712006e-70
1.712536777020863e-64
18.0ms
-3.254643710905554e-39
-8.108675008689095e-47
Samples
15.0ms224×0valid
11.0ms40×2valid
3.0ms24×1valid
Compiler

Compiled 1 233 to 788 computations (36.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
ival-mult: 7.0ms (33.6% of total)
ival-hypot: 7.0ms (33.6% of total)
ival-sqrt: 3.0ms (14.4% of total)
ival-sub: 2.0ms (9.6% of total)
adjust: 1.0ms (4.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch8.0ms (0.1%)

Memory
-47.6MiB live, 8.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
3.1896786448712006e-70
1.712536777020863e-64
6.0ms
-3.254643710905554e-39
-8.108675008689095e-47
Compiler

Compiled 1 035 to 671 computations (35.2% saved)

bsearch18.0ms (0.2%)

Memory
39.0MiB live, 39.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
3.1896786448712006e-70
1.712536777020863e-64
1.0ms
-3.254643710905554e-39
-8.108675008689095e-47
Samples
4.0ms22×2valid
4.0ms55×0valid
2.0ms19×1valid
Compiler

Compiled 909 to 599 computations (34.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-hypot: 3.0ms (41.1% of total)
ival-mult: 2.0ms (27.4% of total)
adjust: 1.0ms (13.7% of total)
ival-sub: 1.0ms (13.7% of total)
ival-sqrt: 1.0ms (13.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch5.0ms (0.1%)

Memory
-38.8MiB live, 7.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
3.1896786448712006e-70
1.712536777020863e-64
3.0ms
-3.254643710905554e-39
-8.108675008689095e-47
Compiler

Compiled 990 to 608 computations (38.6% saved)

bsearch28.0ms (0.4%)

Memory
13.7MiB live, 59.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
1.5199962246692645e+128
3.8135878673941155e+130
1.0ms
-3.254643710905554e-39
-8.108675008689095e-47
Samples
8.0ms31×2valid
6.0ms24×3valid
4.0ms29×1valid
2.0ms28×0valid
Compiler

Compiled 644 to 426 computations (33.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-hypot: 6.0ms (37.9% of total)
ival-mult: 5.0ms (31.6% of total)
adjust: 2.0ms (12.6% of total)
ival-sqrt: 2.0ms (12.6% of total)
ival-sub: 1.0ms (6.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch28.0ms (0.4%)

Memory
20.9MiB live, 66.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
25.0ms
2.2236270216682494e-245
7.089633807870402e-243
Samples
8.0ms31×3valid
7.0ms69×0valid
3.0ms18×2valid
1.0ms10×1valid
Compiler

Compiled 250 to 166 computations (33.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-hypot: 6.0ms (44.7% of total)
ival-mult: 3.0ms (22.4% of total)
ival-sqrt: 2.0ms (14.9% of total)
adjust: 1.0ms (7.5% of total)
ival-sub: 1.0ms (7.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

simplify73.0ms (1%)

Memory
-19.7MiB live, 80.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0104468
1156468
2284468
3641468
42061468
54502466
66000466
76929466
Stop Event
node limit
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re))))
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) #s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 25999999999999998106684492212825063740132145893512827898237348529910637889477267562906801880767235150210475877405122636971350425600 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) #s(literal 0 binary64)))
(if (<=.f64 im #s(literal 576577292452201/480481077043500814718154092512592439123952613987168226347385561008808420007630829308634252709141208374307457227821149607627692202643343568752733498024953930242542523045817764949544214392905306388478705146745768073877141698859815495632935288783334250628775936 binary64)) #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))))
#s(literal 0 binary64)
Outputs
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re))))
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) re))))
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) #s(approx (* (neg re) (+ (* (/ 1/2 re) (/ (* im im) re)) 2)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (*.f64 #s(literal -2 binary64) re))))))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 8043863381872159/7588550360256754183279148073529370729071901715047420004889892225542594864082845696 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re im) im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 (*.f64 #s(literal 1 binary64) (*.f64 im #s(literal 1 binary64))) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))) (*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) #s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 4742843975160471/948568795032094272909893509191171341133987714380927500611236528192824358010355712 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))) #s(approx (* 1/2 (sqrt (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re))) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (pow.f64 re #s(literal -1 binary64)))))))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 25999999999999998106684492212825063740132145893512827898237348529910637889477267562906801880767235150210475877405122636971350425600 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))) #s(literal 0 binary64)))
(if (<=.f64 re #s(literal -2911741527645189/1532495540865888858358347027150309183618739122183602176 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 25999999999999998106684492212825063740132145893512827898237348529910637889477267562906801880767235150210475877405122636971350425600 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))) #s(literal 0 binary64)))
(if (<=.f64 im #s(literal 576577292452201/480481077043500814718154092512592439123952613987168226347385561008808420007630829308634252709141208374307457227821149607627692202643343568752733498024953930242542523045817764949544214392905306388478705146745768073877141698859815495632935288783334250628775936 binary64)) #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (+ (- (sqrt (+ (* im im) (* re re))) re) (sqrt (+ (* im im) (* re re)))) re) (+.f64 im im)))))
(if (<=.f64 im #s(literal 576577292452201/480481077043500814718154092512592439123952613987168226347385561008808420007630829308634252709141208374307457227821149607627692202643343568752733498024953930242542523045817764949544214392905306388478705146745768073877141698859815495632935288783334250628775936 binary64)) #s(literal 0 binary64) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (+.f64 im im)))))
#s(literal 0 binary64)

soundness1.2s (16.9%)

Memory
19.1MiB live, 1 378.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043322
075322
1223322
21457322
08294322
055419
087347
1290343
21922331
08291327
05512736
119412582
082552458
01253
02051
16751
254427
0943415
04632634
116612487
276812469
083152336
08184563
129674318
084614111
053459
080350
1317324
22319324
08543320
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 1 379 to 776 computations (43.7% saved)

preprocess131.0ms (1.8%)

Memory
39.8MiB live, 186.3MiB allocated
Remove

(abs im)

Compiler

Compiled 1 078 to 294 computations (72.7% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.1MiB allocated

Profiling

Loading profile data...