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

Time bar (total: 7.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze85.0ms (1.2%)

Memory
25.5MiB live, 101.2MiB 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.7s (23.5%)

Memory
14.8MiB live, 2 023.4MiB allocated
Samples
760.0ms6 155×0valid
188.0ms839×2valid
140.0ms470×3valid
119.0ms792×1valid
Precisions
Click to see histograms. Total time spent on operations: 832.0ms
ival-hypot: 372.0ms (44.7% of total)
ival-mult: 182.0ms (21.9% of total)
ival-sub: 104.0ms (12.5% of total)
ival-sqrt: 95.0ms (11.4% of total)
adjust: 39.0ms (4.7% of total)
ival->: 23.0ms (2.8% of total)
exact: 12.0ms (1.4% of total)
ival-assert: 4.0ms (0.5% of total)
Bogosity

explain200.0ms (2.8%)

Memory
15.1MiB live, 294.8MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1300-1(-3.2330032790927076e-199 8.316100128620004e-156)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
470-0-(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
280-1(3.6643731701174204e-71 1.1175374690439428e-197)(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))))
01(3.6643731701174204e-71 1.1175374690439428e-197)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-rescue1150
(+.f64 (*.f64 re re) (*.f64 im im))overflow115
(*.f64 re re)overflow73
(*.f64 im im)overflow65
-.f64(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation470
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue270
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow31
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow4
(*.f64 re re)underflow48
(*.f64 im im)underflow67
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow32
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue140
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 re re)underflow48
(*.f64 im im)underflow67
*.f64(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))n*u10
Confusion
Predicted +Predicted -
+1731
-082
Precision
1.0
Recall
0.9942528735632183
Confusion?
Predicted +Predicted MaybePredicted -
+17301
-0082
Precision?
1.0
Recall?
0.9942528735632183
Freqs
test
numberfreq
083
1142
231
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
35.0ms356×0valid
26.0ms68×1valid
20.0ms60×2valid
10.0ms28×3valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 68.0ms
ival-mult: 21.0ms (30.9% of total)
ival-hypot: 16.0ms (23.5% of total)
adjust: 13.0ms (19.1% of total)
ival-add: 6.0ms (8.8% of total)
ival-sqrt: 5.0ms (7.3% of total)
ival-sub: 5.0ms (7.3% of total)
exact: 1.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess93.0ms (1.3%)

Memory
13.1MiB live, 50.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03077
17175
215275
328575
442475
551575
663775
777575
883075
01215
02015
12515
23615
35215
47315
59815
615415
722715
831015
936015
1042015
1143415
1245015
1347015
1450015
1553115
1654315
1754515
054510
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.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.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)

simplify33.0ms (0.5%)

Memory
-18.9MiB live, 16.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
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-diff128
(+.f64 (*.f64 re re) (*.f64 im im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
12575
23675
35275
47375
59875
615475
722775
831075
936075
1042075
1143475
1245075
1347075
1450075
1553175
1654375
1754575
054549
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
9.3MiB live, 86.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
accuracy6.5356177602219026
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy10.982711913290611
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy29.958617807037136
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
28.0ms178×0valid
8.0ms30×2valid
6.0ms34×1valid
5.0ms14×3valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 32.0ms
ival-hypot: 15.0ms (46.8% of total)
ival-mult: 8.0ms (24.9% of total)
ival-sqrt: 3.0ms (9.4% of total)
adjust: 2.0ms (6.2% of total)
ival-sub: 2.0ms (6.2% of total)
ival-add: 1.0ms (3.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series24.0ms (0.3%)

Memory
12.2MiB live, 46.1MiB allocated
Counts
6 → 113
Calls
Call 1
Inputs
(+.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 #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 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Outputs
(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)))
(* 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/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im (* -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)))
(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))))))
(/ (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 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow 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/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)
(* -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))))))))
(* -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))))))))
(* 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)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (+ (* -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))))
(* (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 (+ 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/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* im (+ 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/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 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 (* im (+ 1 (/ 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
8.0ms
im
@0
((+ (* re re) (* im 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))) (- (sqrt (+ (* re re) (* im im))) re))
4.0ms
re
@inf
((+ (* re re) (* im 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))) (- (sqrt (+ (* re re) (* im im))) re))
3.0ms
re
@-inf
((+ (* re re) (* im 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))) (- (sqrt (+ (* re re) (* im im))) re))
3.0ms
im
@-inf
((+ (* re re) (* im 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))) (- (sqrt (+ (* re re) (* im im))) re))
2.0ms
im
@inf
((+ (* re re) (* im 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))) (- (sqrt (+ (* re re) (* im im))) re))

simplify211.0ms (3%)

Memory
17.2MiB live, 204.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05513021
118142867
263802852
081992692
Stop Event
iter limit
node limit
Counts
113 → 111
Calls
Call 1
Inputs
(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)))
(* 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/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im (* -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)))
(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))))))
(/ (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 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow 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/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)
(* -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))))))))
(* -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))))))))
(* 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)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (+ (* -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))))
(* (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 (+ 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/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* im (+ 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/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 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 (* im (+ 1 (/ 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
(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/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.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/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.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)))))) 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))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) 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 (fma.f64 (*.f64 re (/.f64 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))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.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)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.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 (fma.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)
(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 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 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 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 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/256 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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)))))
(/ (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 (neg.f64 (pow.f64 im #s(literal 8 binary64))) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 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 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 re re) (/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im 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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/2 (/ (pow im 2) re))
(/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re))) 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 (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)
(* -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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #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 (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 (*.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 (/.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)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 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 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 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)))))
(* 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/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.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)))))) 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 (/.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 (fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 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)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))))) (*.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 (/.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 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 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)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.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)) (*.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)))
(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)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) 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)))
(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)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) re))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 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)
(* (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 #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))
(* (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/4 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)))) 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/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 #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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) 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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 re (/.f64 re im)) im)) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(* 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 (*.f64 re (/.f64 re im)) 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 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (/.f64 re 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 (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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* -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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (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 (neg.f64 re) (/.f64 re im) (*.f64 #s(literal -2 binary64) re)) 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 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 (* 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)))))
(fma.f64 (/.f64 (-.f64 (*.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64)) re) im) 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)))))
(neg.f64 (fma.f64 (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/8 binary64) im) (*.f64 #s(literal 1/2 binary64) (*.f64 re re))) im) re) im) im im))

rewrite547.0ms (7.7%)

Memory
-50.8MiB live, 309.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01265
02065
15665
237465
3419265
0839138
Stop Event
iter limit
node limit
iter limit
Counts
6 → 292
Calls
Call 1
Inputs
(+.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 #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 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Outputs
(*.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (+.f64 (pow.f64 (*.f64 im (hypot.f64 im re)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))) (-.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 re #s(literal 12 binary64)))) (fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 re #s(literal 8 binary64))))
(*.f64 (/.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 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 im re)) (+.f64 im re))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (sqrt.f64 (hypot.f64 im re)))
(*.f64 (sqrt.f64 (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (fma.f64 im im (*.f64 (neg.f64 re) re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))
(*.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))
(*.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(*.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))
(*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 (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 (+.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)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (hypot.f64 im re) (hypot.f64 im re))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))))
(pow.f64 (/.f64 (fma.f64 im im (*.f64 (neg.f64 re) re)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 8 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 4 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64)) #s(literal -1 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))) (+.f64 im re)) (-.f64 re im))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (hypot.f64 im re)) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.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) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.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 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (fma.f64 im im (*.f64 (neg.f64 re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #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 re im) (+.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 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 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 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 im im (*.f64 (neg.f64 re) re)))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (+.f64 (pow.f64 (*.f64 im re) #s(literal 4 binary64)) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 8 binary64)))))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64))))
(/.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (+.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (pow.f64 (*.f64 im re) #s(literal 6 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im (*.f64 (neg.f64 re) re)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 im re) #s(literal -2 binary64)))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(neg.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))) (+.f64 (pow.f64 (*.f64 im (hypot.f64 im re)) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (*.f64 (neg.f64 re) #s(literal -1 binary64)) re (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (+.f64 im re)) (/.f64 re (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 (*.f64 re re) (+.f64 im re)) (/.f64 (*.f64 re re) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (/.f64 re (+.f64 im re)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (-.f64 re im)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (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 #s(literal -1 binary64) (*.f64 (neg.f64 re) re) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (*.f64 im im))
(fma.f64 (neg.f64 re) (neg.f64 re) (*.f64 im im))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 re (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 im im (*.f64 re re))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 re (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(fma.f64 re re (*.f64 im im))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 im im (*.f64 (neg.f64 re) re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 im im (*.f64 (neg.f64 re) re))))
(-.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))))
(fabs.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 im re)) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64))) #s(literal -1 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 (hypot.f64 im re)) #s(literal 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 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (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 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.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)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.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 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 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 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (exp.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(exp.f64 (fma.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(exp.f64 (fma.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #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 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #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 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #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 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)) (fma.f64 (neg.f64 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))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 im re) re) re)))
(*.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (-.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))))
(*.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 2 binary64) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(pow.f64 (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 2 binary64)) (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)))) #s(literal 2 binary64)) (neg.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 #s(literal 2 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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 2 binary64))) (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) re)))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) re)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 2 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(fma.f64 #s(literal -2 binary64) re (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (hypot.f64 im re))) (sqrt.f64 (hypot.f64 im re)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (*.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 (neg.f64 re) #s(literal 2 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 #s(literal 2 binary64) (neg.f64 re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal -2 binary64) re))
(+.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) re))
(*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.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)))) #s(literal -1 binary64))
(pow.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 8 binary64)) #s(literal 1/8 binary64))
(pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64)) #s(literal -1/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 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (hypot.f64 (*.f64 im im) (*.f64 re re)) (sqrt.f64 (fma.f64 im im (*.f64 (neg.f64 re) re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal -2 binary64))))
(/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (hypot.f64 im re))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(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)) im)
(hypot.f64 (neg.f64 re) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 re) im)
(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 im)
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 im re)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.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/4 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 im re)) #s(literal 1 binary64)))
(exp.f64 (log.f64 (hypot.f64 im 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 4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 im re) 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 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (-.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (hypot.f64 im re) re))
(*.f64 (/.f64 (fma.f64 (neg.f64 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)))) (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (pow.f64 (neg.f64 (+.f64 (hypot.f64 im re) re)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (neg.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.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 (+.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (hypot.f64 im re) re) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 (-.f64 (hypot.f64 im re) re) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (-.f64 (hypot.f64 im re) re) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (*.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 -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) (pow.f64 (*.f64 re (/.f64 re (+.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 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (neg.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))) (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 re (/.f64 re (+.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 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) 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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1 binary64)) (+.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (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 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64))) (fma.f64 (+.f64 (hypot.f64 im re) 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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (+.f64 (hypot.f64 im re) 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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (*.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(/.f64 (fma.f64 (neg.f64 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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) (hypot.f64 im re)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 im re) re)))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 im re) re) re)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (-.f64 (*.f64 (+.f64 (hypot.f64 im re) re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(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)))) (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (hypot.f64 im re) re) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (neg.f64 re))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 im re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/2 binary64)) (neg.f64 re))
(fma.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (hypot.f64 im re) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (hypot.f64 im re) (/.f64 (hypot.f64 im re) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (/.f64 (hypot.f64 im re) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 im re))
(-.f64 (+.f64 (hypot.f64 im re) #s(literal 0 binary64)) re)
(-.f64 #s(literal 0 binary64) (-.f64 re (hypot.f64 im 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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 im re) re)
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(+.f64 (neg.f64 re) (hypot.f64 im re))
(+.f64 (hypot.f64 im re) (neg.f64 re))

eval87.0ms (1.2%)

Memory
6.0MiB live, 157.5MiB allocated
Compiler

Compiled 12 006 to 2 494 computations (79.2% saved)

prune22.0ms (0.3%)

Memory
13.1MiB live, 51.1MiB allocated
Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New38914403
Fresh000
Picked101
Done000
Total39014404
Accuracy
99.8%
Counts
404 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
72.4%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
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))))
24.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
48.6%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
46.4%
(*.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)))))
16.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
15.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.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)) (*.f64 im im)))))
26.9%
(*.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))))))
46.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
27.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
23.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)))
40.8%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.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)))
31.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 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
31.5%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) 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))))
Compiler

Compiled 714 to 524 computations (26.6% saved)

simplify173.0ms (2.4%)

Memory
19.0MiB live, 136.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
043442
070397
1108397
2182397
3381397
4822354
51675354
62688354
73945354
85394354
95895354
106451354
116985354
127639354
08058341
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#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))))
#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 (*.f64 im im) re))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
(*.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))))))
#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)))))
#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 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 re)
re
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
#s(literal 4 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))))
#s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(/.f64 im re)
im
re
#s(literal 1 binary64)
(*.f64 re re)
Outputs
(*.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 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (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
#s(literal 2 binary64)
#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 (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 (*.f64 im im) re))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
(*.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 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))) #s(literal 1/2 binary64))
#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)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
#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))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (neg.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(neg.f64 re)
re
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
#s(literal 4 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal -2 binary64) (-.f64 re (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im))))))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)))
(sqrt.f64 (*.f64 #s(literal -2 binary64) (-.f64 re (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im)))))))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))
(*.f64 #s(literal -2 binary64) (-.f64 re (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im))))))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im)))) re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im))))
#s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (fma.f64 re re (*.f64 im im)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(fma.f64 re re (*.f64 im im))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64))
(/.f64 im re)
im
re
#s(literal 1 binary64)
(*.f64 re re)

localize157.0ms (2.2%)

Memory
-34.4MiB live, 294.5MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy6.5356177602219026
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)))
accuracy9.617903159377006
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
accuracy10.982711913290611
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)
accuracy29.958617807037136
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))))
accuracy0.078125
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
accuracy2.41836370457481
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
accuracy6.5356177602219026
(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)))))
accuracy46.09911427722581
#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))))
accuracy0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
accuracy6.5356177602219026
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
accuracy10.260696230397912
(/.f64 (*.f64 im im) re)
accuracy43.132252967932814
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
accuracy0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
accuracy0
(*.f64 #s(literal -4 binary64) re)
accuracy6.5356177602219026
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
accuracy46.41075034015039
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
accuracy0
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.00390625
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy6.5356177602219026
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy10.982711913290611
(-.f64 (hypot.f64 im re) re)
Samples
52.0ms178×0valid
33.0ms30×2valid
17.0ms34×1valid
12.0ms14×3valid
Compiler

Compiled 771 to 75 computations (90.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 74.0ms
ival-hypot: 24.0ms (32.6% of total)
ival-mult: 19.0ms (25.8% of total)
ival-add: 8.0ms (10.9% of total)
adjust: 7.0ms (9.5% of total)
ival-sqrt: 5.0ms (6.8% of total)
ival-sub: 4.0ms (5.4% of total)
ival-div: 3.0ms (4.1% of total)
ival-neg: 2.0ms (2.7% of total)
exact: 1.0ms (1.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series21.0ms (0.3%)

Memory
-5.7MiB live, 30.9MiB allocated
Counts
23 → 123
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 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 #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))))))
(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)))))
#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 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))))
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)
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)))
(* -4 re)
(/ (pow im 2) re)
(* -1 (/ (pow im 2) re))
(/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)
(pow im 2)
(+ (pow im 2) (pow re 2))
(/ (pow im 2) (pow re 2))
(/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (* 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)
(* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
4
(+ 4 (/ (pow im 2) (pow re 2)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1/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 (+ 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)))))))
(* -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))))))))
(* -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))))))))
(* 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))))
(+ (* -4 re) (* -1 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* 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) (- (* -4 (/ re (pow im 2))) (/ 1 re)))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1/2 (* (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 (+ 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))))))))
Calls

6 calls:

TimeVariablePointExpression
4.0ms
im
@0
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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) (* 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)) (/ (* im im) re) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (* 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)) (* (+ (* (/ im re) (/ im re)) 1) (* 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)) (+ (* (/ im re) (/ im re)) 4) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))
4.0ms
im
@-inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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) (* 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)) (/ (* im im) re) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (* 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)) (* (+ (* (/ im re) (/ im re)) 1) (* 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)) (+ (* (/ im re) (/ im re)) 4) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))
3.0ms
re
@inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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) (* 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)) (/ (* im im) re) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (* 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)) (* (+ (* (/ im re) (/ im re)) 1) (* 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)) (+ (* (/ im re) (/ im re)) 4) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))
2.0ms
im
@inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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) (* 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)) (/ (* im im) re) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (* 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)) (* (+ (* (/ im re) (/ im re)) 1) (* 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)) (+ (* (/ im re) (/ im re)) 4) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))
2.0ms
re
@0
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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) (* 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)) (/ (* im im) re) (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (* 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)) (* (+ (* (/ im re) (/ im re)) 1) (* 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)) (+ (* (/ im re) (/ im re)) 4) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))

simplify199.0ms (2.8%)

Memory
19.3MiB live, 256.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05723115
118672959
265132943
081652780
Stop Event
iter limit
node limit
Counts
123 → 121
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)))
(* -4 re)
(/ (pow im 2) re)
(* -1 (/ (pow im 2) re))
(/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)
(pow im 2)
(+ (pow im 2) (pow re 2))
(/ (pow im 2) (pow re 2))
(/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (* 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)
(* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
4
(+ 4 (/ (pow im 2) (pow re 2)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1/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 (+ 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)))))))
(* -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))))))))
(* -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))))))))
(* 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))))
(+ (* -4 re) (* -1 (/ (pow im 2) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* 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) (- (* -4 (/ re (pow im 2))) (/ 1 re)))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1/2 (* (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 (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Outputs
(* 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/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 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/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))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) 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 (fma.f64 (*.f64 re (/.f64 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))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.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 (fma.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)
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 im im) (neg.f64 re))
(/ (+ (* -4 (pow re 2)) (* -1 (pow im 2))) re)
(/.f64 (fma.f64 (neg.f64 im) im (*.f64 (*.f64 #s(literal -4 binary64) re) re)) re)
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(/ (pow im 2) (pow re 2))
(/.f64 (/.f64 (*.f64 im im) re) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))
(/.f64 (/.f64 (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 im im)) re) re)
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.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)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(* 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 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 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 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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 #s(literal -1/256 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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)
(/.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 (-.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))) (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 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/2 binary64) im) im (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re))) 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 (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)
(* re (- (* -1 (/ (pow im 2) (pow re 2))) 4))
(*.f64 (-.f64 #s(literal -4 binary64) (/.f64 (/.f64 (*.f64 im im) re) 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))
4
#s(literal 4 binary64)
(+ 4 (/ (pow im 2) (pow re 2)))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* -1/2 (* (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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #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 (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 (*.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/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) (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/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))))))
(* -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)))))
(* -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 (/.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 (/.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))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* 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) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.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)))))) 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 (*.f64 im im) #s(literal -1/32 binary64)) (*.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))))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.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)))))) (pow.f64 im #s(literal 4 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/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 (/.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 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 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)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))))) (*.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)))
(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)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) 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)))
(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)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) re))
(* (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 #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))
(+ (* -4 re) (* -1 (/ (pow im 2) re)))
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (/.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/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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 re (/.f64 re im)) im)) (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 (*.f64 re (/.f64 re im)) 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 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (/.f64 re im)) im)
(* (pow im 2) (- (* -4 (/ re (pow im 2))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 #s(literal -4 binary64) im) (/.f64 re im) (/.f64 #s(literal -1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(* -1/2 (* (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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 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/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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (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 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/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)))))
(neg.f64 (fma.f64 (/.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))) im) re) im) im im))
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))

rewrite201.0ms (2.8%)

Memory
-12.4MiB live, 179.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043378
070322
1216312
21251312
08426306
Stop Event
iter limit
node limit
iter limit
Counts
23 → 460
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 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 #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))))))
(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)))))
#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 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))))
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #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 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 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 (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)))))
(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 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #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 -1 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))) (-.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (hypot.f64 re im))) (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))) (-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re))) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re))))))
(/.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 (*.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 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 re im) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (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)))) (/.f64 #s(literal 1 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)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re))))))
(*.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 -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (*.f64 re re) (+.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 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(/.f64 (-.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 (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 (/.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 (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 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 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (fma.f64 (/.f64 (*.f64 re re) (+.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 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (-.f64 (pow.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)))) #s(literal 3 binary64)) (pow.f64 (/.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)))) #s(literal 3 binary64))) (fma.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 (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)))) (fma.f64 (/.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 (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 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 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.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))) (*.f64 (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re)))
(/.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)))) (*.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 (neg.f64 (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (*.f64 re (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 re (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(/.f64 (fma.f64 (neg.f64 (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 re (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 re (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (*.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 re (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 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 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 re (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 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 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fma.f64 (pow.f64 (neg.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 re #s(literal 0 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re re #s(literal 0 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 (pow.f64 (neg.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 re #s(literal 0 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re re #s(literal 0 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)))) re (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.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 re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) 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 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)))) re))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (neg.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 re #s(literal 0 binary64))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) 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 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)))) re))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 (neg.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 re #s(literal 0 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 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.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))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 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 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 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)) (neg.f64 re))
(fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re re #s(literal 0 binary64))) (hypot.f64 re im))
(fma.f64 (neg.f64 (*.f64 re re)) (pow.f64 re #s(literal -1 binary64)) (hypot.f64 re im))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) #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 -1 binary64)) (neg.f64 (/.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))))))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 re im))
(-.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 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (neg.f64 (/.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)))) (neg.f64 (/.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 (neg.f64 re) (hypot.f64 re im))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(*.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 (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)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 4 binary64) re))
(*.f64 #s(literal -1 binary64) (*.f64 re #s(literal 4 binary64)))
(*.f64 #s(literal 4 binary64) (neg.f64 re))
(*.f64 (neg.f64 re) #s(literal 4 binary64))
(*.f64 #s(literal -4 binary64) re)
(*.f64 re #s(literal -4 binary64))
(neg.f64 (*.f64 #s(literal 4 binary64) re))
(neg.f64 (*.f64 re #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal 4 binary64) re))
(-.f64 #s(literal 0 binary64) (*.f64 re #s(literal 4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -2 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 re (*.f64 im im)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) (/.f64 im #s(literal 1 binary64)))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1 binary64))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -2 binary64)))) (neg.f64 re))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -2 binary64))) re)
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 re (*.f64 im im))))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 re (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -2 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 re (*.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re)) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)) re)
(*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))))
(*.f64 #s(literal -1 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))
(*.f64 (neg.f64 re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(*.f64 re (neg.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) (+.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))))
(/.f64 (fma.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (+.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re)) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64))) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)) (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))) (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 (neg.f64 re) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(neg.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(fma.f64 (/.f64 (neg.f64 re) re) (/.f64 (*.f64 im im) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (/.f64 (*.f64 im im) re) (neg.f64 re)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (*.f64 im im) (neg.f64 re)) (pow.f64 re #s(literal -2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (/.f64 (*.f64 im im) re)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (*.f64 im im)) (pow.f64 re #s(literal -2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (/.f64 im re)) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal -1 binary64)) re (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 #s(literal 4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 #s(literal -1 binary64) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal 4 binary64) (neg.f64 re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 (/.f64 im re) (*.f64 (/.f64 im re) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (neg.f64 re) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (neg.f64 re) #s(literal 4 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 (/.f64 (*.f64 im im) re) (/.f64 (neg.f64 re) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -4 binary64) re (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 re #s(literal -4 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))) (/.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal 4 binary64) re))
(-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 re #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(+.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))
(+.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))
(*.f64 (/.f64 (*.f64 re re) (+.f64 (/.f64 im re) #s(literal 1 binary64))) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (-.f64 (/.f64 im re) #s(literal 1 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (+.f64 (/.f64 im re) #s(literal 1 binary64))) (/.f64 (*.f64 re re) (-.f64 (/.f64 im re) #s(literal 1 binary64))))
(*.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 re re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64))) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 re re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) re) re)
(*.f64 (*.f64 re re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 re re))
(*.f64 re (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) re))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (*.f64 re re)))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (*.f64 re re)))
(/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))) (*.f64 (*.f64 re re) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64))) (*.f64 (*.f64 re re) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (*.f64 re re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 re re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 re re)) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 re re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64))) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 re re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 re re) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (*.f64 re re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 re re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 re re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 re re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 6 binary64)) #s(literal 1 binary64)))))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 re re) (*.f64 re re))
(fma.f64 (*.f64 re re) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 re re))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(fma.f64 (neg.f64 re) (neg.f64 re) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(fma.f64 (neg.f64 re) (neg.f64 re) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(fma.f64 re re (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(+.f64 (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)) (*.f64 re re))
(+.f64 (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)) (*.f64 re re))
(+.f64 (*.f64 re re) (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))
(+.f64 (*.f64 re re) (pow.f64 (*.f64 re (/.f64 im re)) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)) (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)))) (sqrt.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re))) (pow.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal -1 binary64)))
(*.f64 (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))
(/.f64 (-.f64 (*.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))) (-.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))) (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))) (-.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) (neg.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re))) (*.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) (neg.f64 re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)))) (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) #s(literal 2 binary64)) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) (*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(fma.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(+.f64 (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(*.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(*.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))) (*.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))) (+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))) (neg.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 16 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64))) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(fma.f64 (/.f64 (/.f64 im re) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (exp.f64 (log.f64 (/.f64 im re))) (exp.f64 (log.f64 (/.f64 im re))) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 im re) re) (/.f64 im #s(literal 1 binary64)) #s(literal 4 binary64))
(fma.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (/.f64 im re) re) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) (/.f64 im re)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (*.f64 (/.f64 im re) (neg.f64 im)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (/.f64 im re) #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 (neg.f64 im) im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (*.f64 (neg.f64 im) im) re) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -2 binary64)) (*.f64 im im) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 im re) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 im im) re) #s(literal 4 binary64))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)) (neg.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(fma.f64 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (/.f64 re im))) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re))) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) re)) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (*.f64 re (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64) #s(literal 4 binary64))
(fma.f64 #s(literal 1 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(fma.f64 (/.f64 (*.f64 im im) re) (pow.f64 re #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 (*.f64 im im) (pow.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 2 binary64)) #s(literal 4 binary64))
(fma.f64 (*.f64 im im) (pow.f64 re #s(literal -2 binary64)) #s(literal 4 binary64))
(fma.f64 im (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) re)) #s(literal 4 binary64))
(fma.f64 im (/.f64 (/.f64 im re) re) #s(literal 4 binary64))
(fma.f64 im (*.f64 im (pow.f64 re #s(literal -2 binary64))) #s(literal 4 binary64))
(fma.f64 im (pow.f64 (*.f64 re (/.f64 re im)) #s(literal -1 binary64)) #s(literal 4 binary64))
(-.f64 (/.f64 #s(literal 16 binary64) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (neg.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 1 binary64))
(pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(/.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 0 binary64)) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 0 binary64)))
(/.f64 (+.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) #s(literal 0 binary64)) (+.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 #s(literal 0 binary64) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 0 binary64)))))
(fma.f64 (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) #s(literal 0 binary64))
(fma.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) #s(literal 0 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))
(fabs.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(exp.f64 (log.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal 0 binary64))
(*.f64 (neg.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))
(*.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) (pow.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (neg.f64 re))))))
(*.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))) (*.f64 (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))) (+.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))) (*.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))) (+.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))
(/.f64 (-.f64 (*.f64 re re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (-.f64 (neg.f64 re) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (fma.f64 (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (*.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64))) (fma.f64 re re (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 (neg.f64 re) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))
(/.f64 (-.f64 (*.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (*.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) (*.f64 re re))) (*.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (*.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re))) (neg.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (neg.f64 re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(/.f64 (-.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (*.f64 re re)) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(/.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (neg.f64 re)))) (-.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(fma.f64 (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (sqrt.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (neg.f64 re))
(fma.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (neg.f64 re))
(fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re re #s(literal 0 binary64))) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(fma.f64 (neg.f64 (*.f64 re re)) (pow.f64 re #s(literal -1 binary64)) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(fma.f64 #s(literal -1 binary64) re (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (pow.f64 (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))
(fma.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (pow.f64 (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(fma.f64 re #s(literal -1 binary64) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))
(-.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)))
(-.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))))
(-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)
(+.f64 (/.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re))))
(+.f64 (/.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))) #s(literal 3/2 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64)))))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) re) #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))))
(+.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))) (neg.f64 re))
(+.f64 (neg.f64 re) (sqrt.f64 #s(approx (+ (* re re) (* im im)) (fma.f64 re re (pow.f64 (*.f64 (/.f64 im re) re) #s(literal 2 binary64))))))

eval179.0ms (2.5%)

Memory
10.0MiB live, 140.0MiB allocated
Compiler

Compiled 22 747 to 3 293 computations (85.5% saved)

prune44.0ms (0.6%)

Memory
-3.5MiB live, 35.7MiB allocated
Pruning

16 alts after pruning (11 fresh and 5 done)

PrunedKeptTotal
New5719580
Fresh729
Picked055
Done000
Total57816594
Accuracy
99.8%
Counts
594 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
72.3%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
72.4%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.6%
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
46.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
46.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
23.1%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 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)) #s(literal 1/2 binary64))
31.5%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.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)))) #s(literal 1/2 binary64))
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))))
24.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
16.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
21.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 im (/.f64 re im)))))
15.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.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)) (*.f64 im im)))))
21.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
26.9%
(*.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))))))
27.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
31.5%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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))))
Compiler

Compiled 641 to 475 computations (25.9% saved)

simplify298.0ms (4.2%)

Memory
0.8MiB live, 84.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
047340
074299
1108299
2163299
3320299
4479299
5541299
6660299
7939299
81357299
91828299
103190299
114705299
124880299
135049299
145220299
155248299
165248299
175764299
186360299
196444299
206444299
217260299
227636299
237636299
247636299
257636299
267636299
277642299
07642299
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
#s(literal 1 binary64)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) 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 (/.f64 im re) im))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (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) 2) (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) 2) (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)
#s(literal 1/2 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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/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 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
#s(literal 1/2 binary64)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
im
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
Outputs
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 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 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))
#s(literal 1 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 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
#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 (/.f64 im re) im))))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) im)
(/.f64 im re)
im
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (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) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (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) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))
(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 im #s(literal 2 binary64)))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
#s(literal 1/2 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #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)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
im
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re

localize140.0ms (2%)

Memory
12.3MiB live, 208.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.15234375
(*.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)))
accuracy0.2109375
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.21875
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
accuracy10.329940191233876
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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))))
accuracy0
(*.f64 #s(literal 2 binary64) im)
accuracy0.04296875
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy6.5317115102219026
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
accuracy19.125797383596268
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
accuracy0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
accuracy0.109375
(*.f64 (/.f64 im re) im)
accuracy6.5317115102219026
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
accuracy10.363529982457024
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
accuracy0
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
accuracy0
(*.f64 #s(literal 2 binary64) im)
accuracy6.5317115102219026
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy18.723549666003716
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.07421875
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
accuracy0.08203125
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
accuracy6.5317115102219026
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
accuracy10.982711913290611
(-.f64 (hypot.f64 re im) re)
Samples
35.0ms133×0invalid
30.0ms45×0valid
21.0ms30×2valid
15.0ms34×1valid
12.0ms14×3valid
Compiler

Compiled 665 to 85 computations (87.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 79.0ms
ival-mult: 24.0ms (30.5% of total)
ival-div: 17.0ms (21.6% of total)
ival-hypot: 15.0ms (19.1% of total)
ival-sqrt: 12.0ms (15.2% of total)
ival-sub: 5.0ms (6.4% of total)
adjust: 4.0ms (5.1% of total)
ival-add: 1.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series28.0ms (0.4%)

Memory
11.4MiB live, 48.8MiB allocated
Counts
22 → 122
Calls
Call 1
Inputs
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) im)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (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) 2) (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) 2) (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))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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/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 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(-.f64 (hypot.f64 re im) re)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
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/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)))
(/ 1 im)
(+ (/ 1 im) (/ re (pow im 2)))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(/ (pow im 2) re)
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 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)))
(/ (+ (* -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/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))))))
(* 2 (/ re (pow im 2)))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(/ (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 (/ (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)
(* -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/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/2 re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (pow re 2))))) re))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(* 1/2 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -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))))))))
(* (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)))
(* 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))))))))))
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/ (+ (* 2 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))
(/ (+ (* -2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)
(* 1/2 (* im (* (sqrt 1/2) (sqrt 2))))
(* 1/2 (* im (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 (+ (* -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/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))))))
(/ (+ 1 (/ re im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(* 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 (/ (+ (* -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/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 (/ (+ 1 (* -1 (/ re im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) 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
6.0ms
re
@inf
((/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2) (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 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)) (* (/ im re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (- (/ re im) 2) re) (* 2 im)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (* 1/2 (* im (sqrt 1/2))) (- (sqrt (+ (* re re) (* im im))) re) (* im (sqrt 1/2)))
4.0ms
im
@0
((/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2) (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 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)) (* (/ im re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (- (/ re im) 2) re) (* 2 im)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (* 1/2 (* im (sqrt 1/2))) (- (sqrt (+ (* re re) (* im im))) re) (* im (sqrt 1/2)))
4.0ms
im
@-inf
((/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2) (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 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)) (* (/ im re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (- (/ re im) 2) re) (* 2 im)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (* 1/2 (* im (sqrt 1/2))) (- (sqrt (+ (* re re) (* im im))) re) (* im (sqrt 1/2)))
4.0ms
im
@inf
((/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2) (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 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)) (* (/ im re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (- (/ re im) 2) re) (* 2 im)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (* 1/2 (* im (sqrt 1/2))) (- (sqrt (+ (* re re) (* im im))) re) (* im (sqrt 1/2)))
4.0ms
re
@-inf
((/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) 1/2) (sqrt (/ 2 (/ 1 (- (sqrt (+ (* re re) (* im im))) re)))) (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 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)) (* (/ im re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (- (/ re im) 2) re) (* 2 im)) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* im (sqrt 1/2))) (sqrt 2)) (* 1/2 (* im (sqrt 1/2))) (- (sqrt (+ (* re re) (* im im))) re) (* im (sqrt 1/2)))

simplify187.0ms (2.6%)

Memory
-18.3MiB live, 227.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06683170
121642986
273942984
080102836
Stop Event
iter limit
node limit
Counts
122 → 121
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/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)))
(/ 1 im)
(+ (/ 1 im) (/ re (pow im 2)))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(/ (pow im 2) re)
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 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)))
(/ (+ (* -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/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))))))
(* 2 (/ re (pow im 2)))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(/ (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 (/ (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)
(* -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/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/2 re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (pow re 2))))) re))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(* 1/2 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -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))))))))
(* (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)))
(* 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))))))))))
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/ (+ (* 2 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))
(/ (+ (* -2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* -2 re) (* 2 im))) (pow re 2)) im)
(* 1/2 (* im (* (sqrt 1/2) (sqrt 2))))
(* 1/2 (* im (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 (+ (* -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/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))))))
(/ (+ 1 (/ re im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(* 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 (/ (+ (* -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/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 (/ (+ 1 (* -1 (/ re im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* -2 re) (/ (pow re 2) im)) 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))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) 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 (fma.f64 (*.f64 re (/.f64 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/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/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 re #s(literal 1/8 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 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)))
(/ 1 im)
(/.f64 #s(literal 1 binary64) im)
(+ (/ 1 im) (/ re (pow im 2)))
(+.f64 (/.f64 (/.f64 re im) im) (/.f64 #s(literal 1 binary64) im))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 3 binary64))) re (/.f64 (/.f64 #s(literal 1 binary64) im) im)) re (/.f64 #s(literal 1 binary64) im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 3 binary64)))) re (/.f64 (/.f64 #s(literal 1 binary64) im) im)) re (/.f64 #s(literal 1 binary64) im))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.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 (fma.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/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 (-.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))) (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 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/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)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (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 (*.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/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)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (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 (*.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) im) (*.f64 (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 (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 (*.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 (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/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)))))
(* 2 (/ re (pow im 2)))
(*.f64 (/.f64 (/.f64 re im) im) #s(literal 2 binary64))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im))) re)
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im)))) re)
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(*.f64 (-.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) #s(literal 1/8 binary64))) (*.f64 im im) (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 im #s(literal 4 binary64)))) #s(literal -2 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/16 binary64)))) (pow.f64 re #s(literal 6 binary64)))) re)
(/ (pow re 2) im)
(*.f64 re (/.f64 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 (/ (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 (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)
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 4 binary64)) (neg.f64 re))
(* -1 (* re (+ 4 (+ (* -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 im (/.f64 im (*.f64 re re)) #s(literal 4 binary64))) (neg.f64 re))
(* -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 (+.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 im (/.f64 im (*.f64 re 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)))) (neg.f64 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 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (neg.f64 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))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (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))))) (neg.f64 re))
(* -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 (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))))) (neg.f64 re))
(* -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 (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)))) (neg.f64 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 (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/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) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -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 (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))))) (neg.f64 re))
(/ -1/2 re)
(/.f64 #s(literal -1/2 binary64) re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 (*.f64 im (/.f64 im (*.f64 re re))) #s(literal -1/8 binary64) #s(literal 1/2 binary64)) (neg.f64 re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (*.f64 im im) re) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2 binary64))) (neg.f64 re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (pow re 2))))) re))
(/.f64 (-.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 6 binary64))))) (fma.f64 (/.f64 #s(literal 1/8 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(* (pow re 2) (+ (* -1 (/ (+ 2 (* -2 (/ im re))) re)) (/ 1 im)))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal 2 binary64)) re)) (*.f64 re re))
(* 1/2 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (*.f64 re re))) #s(literal 1/2 binary64) #s(literal 2 binary64)) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 im (/.f64 im (*.f64 re re))) #s(literal 1/2 binary64) #s(literal 2 binary64))) (neg.f64 re))
(* -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 (+.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 im (/.f64 im (*.f64 re re))) #s(literal 1/2 binary64) #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)))) (neg.f64 re))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.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)) (*.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 (/.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))
(* 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) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.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)))))) 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 (/.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 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 re)) (*.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)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.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)))))) (*.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 (/.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 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 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)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.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)))))) (*.f64 im im))) (*.f64 im im))) im)
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re)) im) im)
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/.f64 (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) (*.f64 #s(literal 2 binary64) re)) (*.f64 im im))
(/ (+ (* 2 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))
(/.f64 (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) (*.f64 #s(literal 2 binary64) re)) (*.f64 im 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 (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)) im (*.f64 re re)) im)
(* 1/2 (* im (* (sqrt 1/2) (sqrt 2))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* 1/2 (* im (sqrt 1/2)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
(* (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 #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))
(* 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 (+ (* -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 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 re (/.f64 re im)) im)) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #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/4 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)))) 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/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 #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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) 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/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)))) (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/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)
(/ (+ 1 (/ re im)) im)
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) (neg.f64 re)) im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(/.f64 (-.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/2 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) (pow.f64 im #s(literal 3 binary64)))) (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) (neg.f64 re)) im)) 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 (*.f64 re (/.f64 re im)) 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 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #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 (/ (+ (* -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/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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 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/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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))))
(/ -1 im)
(/.f64 #s(literal -1 binary64) im)
(* -1 (/ (+ 1 (* -1 (/ re im))) im))
(/.f64 (+.f64 #s(literal -1 binary64) (/.f64 re im)) im)
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) re) im)) (neg.f64 im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal 1/2 binary64) (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/2 binary64)) im))) im)) im)) (neg.f64 im))
(* -1 (* im (- (* 2 (/ re im)) 2)))
(*.f64 (neg.f64 im) (fma.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 #s(literal -2 binary64) (/.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) 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 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) (neg.f64 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))

rewrite160.0ms (2.2%)

Memory
-0.1MiB live, 232.1MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
047292
074251
1226247
21207228
08963228
Stop Event
iter limit
node limit
iter limit
Counts
22 → 458
Calls
Call 1
Inputs
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) im)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (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) 2) (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) 2) (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))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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/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 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(-.f64 (hypot.f64 re im) re)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
Outputs
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #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 -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #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 -1 binary64)))
(*.f64 #s(literal -2 binary64) (-.f64 re (hypot.f64 im re)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (-.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(*.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(pow.f64 (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))) (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))) (*.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -2 binary64) re))) (-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal -2 binary64) re)))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (-.f64 (*.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal -2 binary64) re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal -2 binary64) re)))))
(/.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 (*.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 #s(literal -2 binary64) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(/.f64 #s(literal 2 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))))
(neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) (-.f64 (hypot.f64 im re) re))))
(neg.f64 (*.f64 #s(literal -2 binary64) (-.f64 (hypot.f64 im re) re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(fma.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (neg.f64 (hypot.f64 im re)) #s(literal -2 binary64) (*.f64 re #s(literal -2 binary64)))
(fma.f64 (neg.f64 re) #s(literal 2 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 im re)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(fma.f64 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) re)))
(fma.f64 #s(literal 2 binary64) (neg.f64 re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal -2 binary64) re))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) (-.f64 (hypot.f64 im re) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 (neg.f64 (hypot.f64 im re)) #s(literal -2 binary64)) (*.f64 re #s(literal -2 binary64)))
(+.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 1 binary64)) (*.f64 #s(literal -2 binary64) re))
(+.f64 (*.f64 #s(literal -2 binary64) (neg.f64 (hypot.f64 im re))) (*.f64 #s(literal -2 binary64) re))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) re)))
(+.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(+.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal -2 binary64) re))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (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 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 #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 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (/.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (-.f64 re (hypot.f64 im re))))
(*.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 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.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)))
(*.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(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 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -2 binary64))) (neg.f64 (sqrt.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 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 #s(literal -2 binary64)) (sqrt.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (*.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))))
(/.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(neg.f64 (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64))))
(neg.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(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 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (+.f64 (hypot.f64 im re) re))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (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) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)))
(*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(pow.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 im re) re))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))
(/.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))))
(/.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)))))
(/.f64 (+.f64 (hypot.f64 im re) re) (-.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 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 #s(literal -1 binary64) (-.f64 re (hypot.f64 im re)))
(/.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))
(neg.f64 (/.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(neg.f64 (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (hypot.f64 im re) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) re))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) re (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (hypot.f64 im re)))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (hypot.f64 im re) re)))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 re (+.f64 (hypot.f64 im re) re)) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(fma.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 re (+.f64 (hypot.f64 im re) re))))
(fma.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 (hypot.f64 im re) re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(fma.f64 (*.f64 re (+.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 re (+.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(fma.f64 (hypot.f64 im re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (*.f64 re (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))))
(fma.f64 re (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (*.f64 (hypot.f64 im re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))))
(sqrt.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(-.f64 #s(literal 0 binary64) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64)))
(+.f64 (*.f64 (hypot.f64 im re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))) (*.f64 re (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))))
(+.f64 (*.f64 re (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))) (*.f64 (hypot.f64 im re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))))
(+.f64 (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))) (*.f64 (*.f64 (hypot.f64 im re) re) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(+.f64 (*.f64 (*.f64 re (+.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))) (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(+.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))) (*.f64 (*.f64 re (+.f64 (hypot.f64 im re) re)) (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))))
(+.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (hypot.f64 im re)) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) re))
(+.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) re) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (hypot.f64 im re)))
(+.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (hypot.f64 im re) re)))
(+.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 re (+.f64 (hypot.f64 im re) re))) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(+.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 re (+.f64 (hypot.f64 im re) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 im #s(literal 2 binary64)))
(*.f64 im #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))) #s(literal 1/2 binary64)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -1/2 binary64))) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (*.f64 (*.f64 im im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (/.f64 im (/.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im (pow.f64 im #s(literal -1 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) im)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (/.f64 #s(literal -1 binary64) im)))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(*.f64 (/.f64 im re) im)
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 im (/.f64 im re))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im re) im))
(pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 re (*.f64 im im))))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re (*.f64 im im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im im)))
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(neg.f64 (/.f64 im (/.f64 (neg.f64 re) im)))
(neg.f64 (/.f64 (*.f64 im im) (neg.f64 re)))
(neg.f64 (*.f64 im (/.f64 (neg.f64 im) re)))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) re) im))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))) #s(literal 1/2 binary64)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))
(*.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 #s(literal 1 binary64) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(*.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)))) (/.f64 #s(literal 1 binary64) (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)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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))) (pow.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(*.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))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.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))))))
(*.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))) (pow.f64 (fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.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 (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 (*.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 #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 (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 (pow.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))) #s(literal 3 binary64)) (pow.f64 (/.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))) #s(literal 3 binary64))) (fma.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 (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))) (fma.f64 (/.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 #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 (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 (neg.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)))) (neg.f64 (-.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(/.f64 (neg.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 (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (neg.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 (neg.f64 (fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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 (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 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (*.f64 (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 (*.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 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(/.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 4 binary64) im) im (*.f64 (*.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))))))
(/.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 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.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)))))
(/.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 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (-.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 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.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 (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)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))))
(neg.f64 (/.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)))) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(neg.f64 (/.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)))) (fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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)))))
(neg.f64 (/.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)))))
(neg.f64 (/.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 im #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (pow.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) (+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 binary64)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (pow.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) (+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 binary64)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1 binary64) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1 binary64) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(fma.f64 (/.f64 (neg.f64 re) im) (neg.f64 re) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 (/.f64 (neg.f64 re) im) (neg.f64 re) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 (neg.f64 re) re) (/.f64 #s(literal -1 binary64) im) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 (neg.f64 re) re) (/.f64 #s(literal -1 binary64) im) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(fma.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (pow.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)) (neg.f64 (/.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)))))
(fma.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 1 binary64) (*.f64 im #s(literal 2 binary64)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 im #s(literal 2 binary64)))
(fma.f64 (/.f64 re im) re (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 (/.f64 re im) re (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 re re) (pow.f64 im #s(literal -1 binary64)) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 re re) (pow.f64 im #s(literal -1 binary64)) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(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 im #s(literal 2 binary64)))
(fma.f64 re (/.f64 re im) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(fma.f64 re (/.f64 re im) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(fma.f64 #s(literal 2 binary64) im (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))) (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.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 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 (fma.f64 im #s(literal 2 binary64) (*.f64 (/.f64 re im) re)) (*.f64 #s(literal -2 binary64) re))
(+.f64 (fma.f64 im #s(literal 2 binary64) (*.f64 (/.f64 re im) re)) (*.f64 re #s(literal -2 binary64)))
(+.f64 (*.f64 (/.f64 re im) re) (fma.f64 #s(literal -2 binary64) re (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (/.f64 re im) re) (fma.f64 re #s(literal -2 binary64) (*.f64 im #s(literal 2 binary64))))
(+.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))) (neg.f64 (/.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 im #s(literal 2 binary64)))
(+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re))) (sqrt.f64 #s(literal 1/2 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 1/2 binary64)))) im)
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re))) #s(literal 1 binary64))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (/.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) im)
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 re)))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 1/2 binary64)))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 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 -1 binary64)))
(*.f64 (/.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1 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) #s(literal 1 binary64)) (/.f64 (-.f64 (hypot.f64 im re) re) (+.f64 (hypot.f64 im re) re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (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)))) (/.f64 #s(literal 1 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 (hypot.f64 im re) re)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.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 -1 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (hypot.f64 im re) (neg.f64 re)))))
(*.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 -1 binary64)))
(*.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (-.f64 re (hypot.f64 im re)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1 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 (*.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 (*.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))))) (*.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 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 (neg.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 (*.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 (fma.f64 #s(literal -1 binary64) (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 (neg.f64 re) (hypot.f64 im re)))))
(/.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 2 binary64)) (*.f64 re re)))) (+.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 (neg.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 (-.f64 (*.f64 (hypot.f64 im re) #s(literal -1 binary64)) (neg.f64 re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (hypot.f64 im re) (pow.f64 re #s(literal -1 binary64))) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 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))) (*.f64 (+.f64 (hypot.f64 im re) re) (+.f64 (hypot.f64 im re) re)))
(/.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)))) (*.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 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 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)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) 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)))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 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)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) 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)))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 re #s(literal -1 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 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (hypot.f64 im re) (neg.f64 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)) (neg.f64 (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.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))) (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 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (hypot.f64 im re) (neg.f64 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 re (hypot.f64 im re)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 re (hypot.f64 im re)) #s(literal -1 binary64)))
(/.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (hypot.f64 im re) (neg.f64 re))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(neg.f64 (-.f64 re (hypot.f64 im re)))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (neg.f64 re))
(fma.f64 (neg.f64 (hypot.f64 im re)) #s(literal -1 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)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 im 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 -1 binary64)) (neg.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))))))
(fma.f64 (neg.f64 re) #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(fma.f64 (neg.f64 re) #s(literal 1 binary64) (hypot.f64 im re))
(fma.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 im re)) (neg.f64 re))
(fma.f64 #s(literal -1 binary64) re (*.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re))))
(fma.f64 (hypot.f64 im re) #s(literal 1 binary64) (neg.f64 re))
(fma.f64 re #s(literal -1 binary64) (*.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 im re))
(fma.f64 #s(literal 1 binary64) (neg.f64 re) (*.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(fma.f64 #s(literal 1 binary64) (neg.f64 re) (hypot.f64 im re))
(fma.f64 #s(literal 1 binary64) (hypot.f64 im re) (neg.f64 re))
(-.f64 (+.f64 (hypot.f64 im re) #s(literal 0 binary64)) re)
(-.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)) (/.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) #s(literal 1 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)))) #s(literal 1 binary64)) (/.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 1 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 #s(literal 0 binary64) (-.f64 re (hypot.f64 im re)))
(-.f64 (hypot.f64 im re) re)
(exp.f64 (neg.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (hypot.f64 im re)) #s(literal -1 binary64)) (neg.f64 re))
(+.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 im re))) (neg.f64 re))
(+.f64 (*.f64 #s(literal 1 binary64) (hypot.f64 im re)) (neg.f64 re))
(+.f64 (neg.f64 (neg.f64 (hypot.f64 im re))) (neg.f64 re))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (/.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)))) (neg.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 (neg.f64 re) (*.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(+.f64 (neg.f64 re) (hypot.f64 im re))
(+.f64 (hypot.f64 im re) (neg.f64 re))
(*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))

eval76.0ms (1.1%)

Memory
-4.8MiB live, 152.8MiB allocated
Compiler

Compiled 17 763 to 2 989 computations (83.2% saved)

prune21.0ms (0.3%)

Memory
15.1MiB live, 54.4MiB allocated
Pruning

19 alts after pruning (12 fresh and 7 done)

PrunedKeptTotal
New5729581
Fresh336
Picked235
Done145
Total57819597
Accuracy
100.0%
Counts
597 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
46.3%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
48.6%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
15.7%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) #s(approx (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im)))) re)))) #s(literal 1/2 binary64))
16.6%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) #s(approx (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im))) re)))) #s(literal 1/2 binary64))
72.4%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.6%
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
46.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
46.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
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))))
16.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
21.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 im (/.f64 re im)))))
21.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
26.9%
(*.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))))))
27.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
31.8%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 743 to 549 computations (26.1% saved)

simplify151.0ms (2.1%)

Memory
3.8MiB live, 50.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
042394
064378
195378
2131378
3202378
4308378
5506378
6862378
71457378
81995378
92341378
102511378
112889378
123055378
133135378
143363378
153363378
163371378
173383378
183409378
193420378
203420378
03420298
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(sqrt.f64 re)
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
#s(literal 1 binary64)
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
#s(literal 1 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
#s(literal 1 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)
(fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64))
(/.f64 re im)
re
im
#s(literal 1/2 binary64)
#s(literal -1 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(sqrt.f64 re)
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
#s(literal 1 binary64)
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (/.f64 #s(literal 2 binary64) im) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
#s(literal 1 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))
#s(literal 2 binary64)
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
#s(literal 1 binary64)
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)
(fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64))
(/.f64 re im)
re
im
#s(literal 1/2 binary64)
#s(literal -1 binary64)

localize134.0ms (1.9%)

Memory
-5.4MiB live, 194.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.07421875
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
accuracy0.08203125
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
accuracy6.5317115102219026
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
accuracy19.12584885088472
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
accuracy0.07421875
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy0.08203125
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
accuracy6.5317115102219026
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
accuracy19.39369573195615
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
accuracy0
(sqrt.f64 re)
accuracy0.09375
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
accuracy0.14453125
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
accuracy10.329940191233876
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
accuracy0
(*.f64 #s(literal 1/2 binary64) im)
accuracy0
(sqrt.f64 re)
accuracy0.125
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
accuracy10.329940191233876
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
accuracy0
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.00390625
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
accuracy6.5317115102219026
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
accuracy19.39369573195615
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
Samples
32.0ms14×3valid
29.0ms133×0invalid
21.0ms34×1valid
20.0ms30×2valid
10.0ms45×0valid
Compiler

Compiled 691 to 74 computations (89.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 78.0ms
ival-sqrt: 23.0ms (29.5% of total)
ival-hypot: 19.0ms (24.3% of total)
ival-div: 12.0ms (15.4% of total)
ival-mult: 11.0ms (14.1% of total)
adjust: 5.0ms (6.4% of total)
ival-sub: 5.0ms (6.4% of total)
ival-add: 3.0ms (3.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series27.0ms (0.4%)

Memory
-8.6MiB live, 29.0MiB allocated
Counts
21 → 116
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
(sqrt.f64 re)
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
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 (* im (sqrt (/ 1 re))))
(sqrt re)
(* 2 (* (/ 1 im) (sqrt re)))
(/ 1 im)
(+ (/ 1 im) (/ re (pow im 2)))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(* 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))))))
(/ (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)
(* 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 (pow im 2)))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(* -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)))))))
(* -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))))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* -2 (* (/ (pow (sqrt -1) 2) im) (sqrt re)))
(/ -1/2 re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (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))))
(* 1/2 im)
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/ (+ (* 2 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))
(* 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)))
(/ (+ 1 (/ re im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(* -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)
(* -1 (/ (+ 1 (* -1 (/ re im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
Calls

6 calls:

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

simplify198.0ms (2.8%)

Memory
15.2MiB live, 202.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06403057
120842878
271322874
084882728
Stop Event
iter limit
node limit
Counts
116 → 115
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 (* im (sqrt (/ 1 re))))
(sqrt re)
(* 2 (* (/ 1 im) (sqrt re)))
(/ 1 im)
(+ (/ 1 im) (/ re (pow im 2)))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(* 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))))))
(/ (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)
(* 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 (pow im 2)))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(* -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)))))))
(* -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))))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* -2 (* (/ (pow (sqrt -1) 2) im) (sqrt re)))
(/ -1/2 re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (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))))
(* 1/2 im)
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/ (+ (* 2 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))
(* 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)))
(/ (+ 1 (/ re im)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(* -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)
(* -1 (/ (+ 1 (* -1 (/ re im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
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 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/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))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) 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 (fma.f64 (*.f64 re (/.f64 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))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.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 (fma.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 (* im (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(sqrt re)
(sqrt.f64 re)
(* 2 (* (/ 1 im) (sqrt re)))
(*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))
(/ 1 im)
(/.f64 #s(literal 1 binary64) im)
(+ (/ 1 im) (/ re (pow im 2)))
(+.f64 (/.f64 (/.f64 re im) im) (/.f64 #s(literal 1 binary64) im))
(+ (* re (+ (* 1/2 (/ re (pow im 3))) (/ 1 (pow im 2)))) (/ 1 im))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 3 binary64))) re (/.f64 (/.f64 #s(literal 1 binary64) im) im)) re (/.f64 #s(literal 1 binary64) im))
(+ (* re (+ (* re (+ (* -1/8 (/ (pow re 2) (pow im 5))) (* 1/2 (/ 1 (pow im 3))))) (/ 1 (pow im 2)))) (/ 1 im))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal 3 binary64)))) re (/.f64 (/.f64 #s(literal 1 binary64) im) im)) re (/.f64 #s(literal 1 binary64) im))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* -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) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.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) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.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 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 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 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))))
(* (* 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/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 (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/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)))))))
(+ (* -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 #s(literal -1/256 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 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)))))
(/ (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 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/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 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/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 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/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))) (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 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 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 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 (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 (pow im 2)))
(*.f64 (/.f64 (/.f64 re im) im) #s(literal 2 binary64))
(* re (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2)))))
(*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im))) re)
(* re (+ (* -1 (/ (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))) (pow re 4))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im)))) re)
(* re (- (+ (* -1 (/ (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 2 (/ 1 (pow im 2))) (* 1/2 (/ 1 (pow re 2))))) (+ (* -1/8 (/ (pow im 2) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 4))))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im))) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 im im) #s(literal 1/8 binary64))) (*.f64 im im) (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 im #s(literal 4 binary64)))) #s(literal -2 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/16 binary64)))) (pow.f64 re #s(literal 6 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 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (neg.f64 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))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (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/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))))) (neg.f64 re))
(* -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 (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))))) (neg.f64 re))
(* -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 (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)))) (neg.f64 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 (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/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) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -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 (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))))) (neg.f64 re))
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))
(* -1 (* re (+ 4 (+ (* -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 4 binary64))) (neg.f64 re))
(* -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 (+.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)))) (neg.f64 re))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64)) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) (neg.f64 re))
(* -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 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.f64 re)
(* -2 (* (/ (pow (sqrt -1) 2) im) (sqrt re)))
(*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))
(/ -1/2 re)
(/.f64 #s(literal -1/2 binary64) re)
(* -1 (/ (+ 1/2 (* -1/8 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/8 binary64) #s(literal 1/2 binary64)) (neg.f64 re))
(* -1 (/ (- (+ 1/2 (* 1/16 (/ (pow im 4) (pow re 4)))) (* 1/8 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/8 binary64) im) re) (/.f64 im re) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/2 binary64))) (neg.f64 re))
(* -1 (/ (- (+ 1/2 (* -1 (/ (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6))) (pow re 6)))) (+ (* -1/16 (/ (pow im 4) (pow re 4))) (* 1/8 (/ (pow im 2) (pow re 2))))) re))
(/.f64 (-.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 6 binary64))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) (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 (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)) (*.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)))))) 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 (/.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 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.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)))))) (*.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 (/.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 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 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)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.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 re re)) #s(literal -1/8 binary64) (/.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)))))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.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)) (*.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 (/.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 (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 #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))
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(/ (+ (* 1/2 (/ (pow im 2) re)) (* 2 re)) (pow im 2))
(/.f64 (/.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re)) im) im)
(/ (+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))) (pow im 2))
(/.f64 (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) (*.f64 #s(literal 2 binary64) re)) (*.f64 im im))
(/ (+ (* 2 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))
(/.f64 (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) (*.f64 #s(literal 2 binary64) re)) (*.f64 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/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)))) (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/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))))
(*.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 (/.f64 re im) #s(literal 1/2 binary64)) (/.f64 re im) #s(literal 1 binary64))) (/.f64 re im)) im)
(/ (+ 1 (/ re im)) im)
(/.f64 (+.f64 (/.f64 re im) #s(literal 1 binary64)) im)
(/ (- (+ 1 (* -1 (/ (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))) (pow im 2)))) (* -1 (/ re im))) im)
(/.f64 (+.f64 (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal 1/2 binary64) re) im) #s(literal 1 binary64)) im)
(/ (- (+ 1 (* -1 (/ (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))) (pow im 3)))) (+ (* -1 (/ re im)) (+ (* -1 (/ (pow re 2) (pow im 2))) (* 1/2 (/ (pow re 2) (pow im 2)))))) im)
(/.f64 (+.f64 (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal 1/2 binary64) re) im) (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/2 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) (pow.f64 im #s(literal 3 binary64))))) 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 (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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 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/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) (-.f64 (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))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (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 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/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)))))
(neg.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal 1/2 binary64) re) im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(neg.f64 (fma.f64 (/.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) (neg.f64 im)) im im))
(/ -1 im)
(/.f64 #s(literal -1 binary64) im)
(* -1 (/ (+ 1 (* -1 (/ re im))) im))
(/.f64 (+.f64 #s(literal -1 binary64) (/.f64 re im)) im)
(* -1 (/ (+ 1 (* -1 (/ (- (+ (* -1 (/ (pow re 2) im)) (* 1/2 (/ (pow re 2) im))) (* -1 re)) im))) im))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) re) im)) (neg.f64 im))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (+ (* 1/2 (/ (pow re 3) im)) (/ (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) im)) (* -1 re)) im))) im))
(/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal -1/2 binary64) (*.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal 1/2 binary64)))) im) #s(literal -1 binary64) re) im)) (neg.f64 im))

rewrite218.0ms (3.1%)

Memory
3.6MiB live, 169.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042343
064327
1236327
21321327
08158247
Stop Event
iter limit
node limit
iter limit
Counts
21 → 479
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
(sqrt.f64 re)
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
(sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
Outputs
(*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (pow.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -2 binary64))) (neg.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(/.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(literal -2 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(/.f64 #s(literal -2 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))
(/.f64 #s(literal 2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(neg.f64 (*.f64 #s(literal -2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) #s(literal 1 binary64))
(/.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal 1 binary64)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 im (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) im)
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 (*.f64 im #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 re)))))
(/.f64 (neg.f64 (pow.f64 re #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal 2 binary64) im)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (sqrt.f64 re))
(/.f64 (pow.f64 re #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) im))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 re #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64))
(pow.f64 (sqrt.f64 re) #s(literal 1 binary64))
(pow.f64 (*.f64 re re) #s(literal 1/4 binary64))
(pow.f64 re #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 re #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal -1/2 binary64)))
(/.f64 (sqrt.f64 re) #s(literal 1 binary64))
(sqrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 im (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) im)
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 (*.f64 im #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 re)))))
(/.f64 (neg.f64 (pow.f64 re #s(literal -1/2 binary64))) (neg.f64 (/.f64 #s(literal 2 binary64) im)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 re))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (sqrt.f64 re))
(/.f64 (pow.f64 re #s(literal -1/2 binary64)) (/.f64 #s(literal 2 binary64) im))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 im) (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (/.f64 #s(literal -1 binary64) im) (/.f64 (sqrt.f64 re) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) (/.f64 (pow.f64 re #s(literal 1/4 binary64)) im))
(*.f64 (/.f64 (pow.f64 re #s(literal 1/4 binary64)) im) (/.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) im) #s(literal 1 binary64)) (sqrt.f64 re))
(*.f64 (pow.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal -1 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)) #s(literal -1 binary64)) (sqrt.f64 re))
(*.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal -1 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) (pow.f64 (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) (neg.f64 (sqrt.f64 re)))
(*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))
(*.f64 (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))) (pow.f64 (neg.f64 im) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 re))) (/.f64 #s(literal 2 binary64) im))
(*.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) im)))
(*.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 2 binary64) im) (sqrt.f64 re))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))))
(*.f64 (neg.f64 (sqrt.f64 re)) (pow.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) (neg.f64 im)))
(*.f64 (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 re) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))))
(*.f64 (sqrt.f64 re) (pow.f64 (/.f64 #s(literal 2 binary64) im) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 re) (/.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 #s(literal 2 binary64) (/.f64 (sqrt.f64 re) im))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sqrt.f64 re) im)) #s(literal -1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))) (neg.f64 (neg.f64 im)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 re)))) (neg.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im))))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2 binary64) (neg.f64 im)))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)) (*.f64 #s(literal -1/2 binary64) (*.f64 im #s(literal 1 binary64))))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)) (*.f64 #s(literal -1/2 binary64) im))
(/.f64 (*.f64 (sqrt.f64 re) #s(literal -1 binary64)) (*.f64 #s(literal -1/2 binary64) im))
(/.f64 (neg.f64 (/.f64 #s(literal 2 binary64) im)) (neg.f64 (pow.f64 re #s(literal -1/2 binary64))))
(/.f64 (/.f64 (sqrt.f64 re) im) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))) (neg.f64 (*.f64 #s(literal 1 binary64) im)))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))) (neg.f64 im))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 re))) (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 re))) (neg.f64 (*.f64 #s(literal -1/2 binary64) im)))
(/.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) im))
(/.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) im)
(/.f64 (/.f64 #s(literal 2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (sqrt.f64 re)) (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))))
(/.f64 (neg.f64 (sqrt.f64 re)) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)))
(/.f64 (neg.f64 (sqrt.f64 re)) (*.f64 #s(literal -1/2 binary64) im))
(/.f64 #s(literal -2 binary64) (neg.f64 (/.f64 im (sqrt.f64 re))))
(/.f64 (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (neg.f64 im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)))
(/.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 im (sqrt.f64 re)) #s(literal 2 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (*.f64 im #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) (*.f64 im #s(literal 1 binary64))))
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im)))
(/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))
(/.f64 #s(literal 2 binary64) (/.f64 im (sqrt.f64 re)))
(neg.f64 (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(literal -1/2 binary64) im)) (*.f64 #s(literal -2 binary64) (/.f64 (sqrt.f64 re) im)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(/.f64 #s(literal -2 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))
(/.f64 #s(literal 2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(neg.f64 (*.f64 #s(literal -2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (pow.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -2 binary64))) (neg.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64)))))
(/.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) #s(literal -1 binary64))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(/.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))))
(/.f64 #s(literal -1 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
(neg.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(sqrt.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64)))
(*.f64 #s(literal -2 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(/.f64 #s(literal -2 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)))
(/.f64 #s(literal 2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)))
(neg.f64 (*.f64 #s(literal -2 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (pow.f64 (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -2 binary64))) (neg.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64)))))
(/.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (neg.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))) #s(literal -1 binary64))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))))
(/.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64))
(/.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))))
(/.f64 #s(literal -1 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))))
(/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
(neg.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(sqrt.f64 (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)))) #s(literal 1 binary64))
(/.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))))
(/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64))
(*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(*.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 1 binary64))
#s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))
(/.f64 (neg.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)))) #s(literal 1 binary64))
(/.f64 (neg.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64))
(/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))) #s(literal 1 binary64)))

eval90.0ms (1.3%)

Memory
-7.0MiB live, 75.7MiB allocated
Compiler

Compiled 14 459 to 2 077 computations (85.6% saved)

prune49.0ms (0.7%)

Memory
-0.8MiB live, 38.0MiB allocated
Pruning

20 alts after pruning (9 fresh and 11 done)

PrunedKeptTotal
New4754479
Fresh257
Picked145
Done077
Total47820498
Accuracy
100.0%
Counts
498 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.4%
(*.f64 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
46.3%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
48.6%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(literal 1/2 binary64))
15.7%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) #s(approx (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/8 binary64) (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im)))) re)))) #s(literal 1/2 binary64))
16.6%
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) #s(approx (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.f64 im im))) re)))) #s(literal 1/2 binary64))
72.4%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.6%
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
46.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
46.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
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))))
16.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
21.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
26.9%
(*.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))))))
27.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (pow.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
31.8%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) im) (sqrt.f64 re))))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
31.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 1 388 to 566 computations (59.2% saved)

regimes89.0ms (1.3%)

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

7 calls:

24.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))))
15.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
10.0ms
im
10.0ms
re
9.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
89.6%2re
72.4%1im
88.3%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.3%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
87.9%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
87.9%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
72.4%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes71.0ms (1%)

Memory
-5.0MiB live, 33.7MiB allocated
Counts
28 → 4
Calls
Call 1
Inputs
(*.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 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.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 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 im re) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 2 binary64) im) (sqrt.f64 re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 im (/.f64 re 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 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 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 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.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 (sqrt.f64 (/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im))))) #s(literal 1/2 binary64))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) 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))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.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 #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 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.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)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) #s(approx (/ 1 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 re re)) (/.f64 #s(literal 2 binary64) (*.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 #s(approx (+ (* re re) (* im im)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re)))) re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/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 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.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)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
Calls

5 calls:

40.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))))
8.0ms
re
7.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
7.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
7.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Results
AccuracySegmentsBranch
73.4%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
73.4%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
73.6%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))))
73.6%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
80.9%4re
Compiler

Compiled 51 to 40 computations (21.6% saved)

regimes6.0ms (0.1%)

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

1 calls:

5.0ms
re
Results
AccuracySegmentsBranch
79.1%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes3.0ms (0%)

Memory
3.8MiB live, 3.8MiB allocated
Counts
6 → 3
Calls
Call 1
Inputs
(*.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 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.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 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) 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 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
Calls

1 calls:

3.0ms
re
Results
AccuracySegmentsBranch
79.1%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes35.0ms (0.5%)

Memory
-22.0MiB live, 17.2MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
(*.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 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.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 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
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 (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
Calls

7 calls:

21.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
2.0ms
im
2.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))))
2.0ms
re
2.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
48.6%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
48.6%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
48.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))))
48.6%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
57.7%2im
57.7%2(*.f64 im im)
59.4%2re
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes9.0ms (0.1%)

Memory
12.1MiB live, 12.1MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 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))))
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
27.0%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))))
27.0%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
27.0%1(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
27.0%1(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
27.0%1im
27.0%1(*.f64 im im)
27.0%1re
Compiler

Compiled 55 to 45 computations (18.2% saved)

bsearch16.0ms (0.2%)

Memory
9.9MiB live, 9.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
7.385359575735827e-40
9.185272352816282e-39
Samples
5.0ms25×2valid
4.0ms59×0valid
2.0ms12×1valid
Compiler

Compiled 210 to 182 computations (13.3% saved)

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

bsearch94.0ms (1.3%)

Memory
0.8MiB live, 39.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
7.941292095289365e-66
3.102038313419419e-43
45.0ms
-3.677548967600358e-151
-3.882517686743743e-152
17.0ms
-1.3500389296277932e+112
-2.083816878771317e+102
Samples
58.0ms357×0valid
8.0ms42×2valid
4.0ms33×1valid
Compiler

Compiled 1 116 to 887 computations (20.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-hypot: 10.0ms (42% of total)
ival-mult: 6.0ms (25.2% of total)
ival-sub: 3.0ms (12.6% of total)
ival-sqrt: 3.0ms (12.6% of total)
adjust: 1.0ms (4.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch17.0ms (0.2%)

Memory
10.8MiB live, 10.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
7.941292095289365e-66
3.102038313419419e-43
13.0ms
-1.944603157091436e+126
-1.8654713831506866e+123
Samples
8.0ms128×0valid
Compiler

Compiled 773 to 625 computations (19.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-hypot: 2.0ms (37.7% of total)
ival-sub: 1.0ms (18.8% of total)
ival-mult: 1.0ms (18.8% of total)
ival-sqrt: 1.0ms (18.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch51.0ms (0.7%)

Memory
-37.3MiB live, 2.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
7.941292095289365e-66
3.102038313419419e-43
49.0ms
-1.944603157091436e+126
-1.8654713831506866e+123
Compiler

Compiled 773 to 625 computations (19.1% saved)

bsearch15.0ms (0.2%)

Memory
9.6MiB live, 9.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
-4.6552143994039665e+52
-3.879490621317126e+48
Samples
8.0ms128×0valid
Compiler

Compiled 322 to 270 computations (16.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-hypot: 2.0ms (37.7% of total)
ival-sub: 1.0ms (18.9% of total)
ival-mult: 1.0ms (18.9% of total)
ival-sqrt: 1.0ms (18.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify24.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
076326
195326
2105326
3109326
4111326
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 re #s(literal 4597486622597667/766247770432944429179173513575154591809369561091801088 binary64)) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -4099999999999999863010824754248508654367585347438453104161834278241058127753587248097785875271482833314009579520 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 -3538089773270195/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 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)))) (if (<=.f64 re #s(literal 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.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))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 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 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 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 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 re #s(literal -6999999999999999495624517169466564524548282122240 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 #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 (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
Outputs
(if (<=.f64 re #s(literal 4597486622597667/766247770432944429179173513575154591809369561091801088 binary64)) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))
(if (<=.f64 re #s(literal 4597486622597667/766247770432944429179173513575154591809369561091801088 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -4099999999999999863010824754248508654367585347438453104161834278241058127753587248097785875271482833314009579520 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 -3538089773270195/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 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)))) (if (<=.f64 re #s(literal 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.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))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -4099999999999999863010824754248508654367585347438453104161834278241058127753587248097785875271482833314009579520 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal -3538089773270195/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 (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)))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 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 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 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 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 re #s(literal -1899999999999999972327333632004304047419423895363707418142974243735732644611264355624252868765167271849158031839611959902208 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2211558125039701/210624583337114373395836055367340864637790190801098222508621955072 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 re #s(literal -6999999999999999495624517169466564524548282122240 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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))))
(if (<=.f64 re #s(literal -6999999999999999495624517169466564524548282122240 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 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #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 #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))

soundness868.0ms (12.2%)

Memory
-21.0MiB live, 458.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05513021
118142867
263802852
081992692
042343
064327
1236327
21321327
08158247
047292
074251
1226247
21207228
08963228
05723115
118672959
265132943
081652780
01265
02065
15665
237465
3419265
0839138
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 893 to 434 computations (51.4% saved)

preprocess41.0ms (0.6%)

Memory
4.0MiB live, 81.1MiB allocated
Remove

(abs im)

Compiler

Compiled 826 to 284 computations (65.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...