math.sqrt on complex, real part

Time bar (total: 7.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze95.0ms (1.3%)

Memory
27.6MiB live, 139.5MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
50%50%50%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
62.5%62.4%37.5%0.1%0%0%0%5
62.5%62.4%37.5%0.1%0%0%0%6
68.8%68.7%31.2%0.1%0%0%0%7
68.8%68.7%31.2%0.1%0%0%0%8
71.9%71.8%28.1%0.1%0%0%0%9
71.9%71.8%28.1%0.1%0%0%0%10
73.4%73.4%26.5%0.1%0%0%0%11
73.4%73.4%26.5%0.1%0%0%0%12
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample2.2s (30.9%)

Memory
42.3MiB live, 1 759.1MiB allocated
Samples
1.1s6 288×0valid
308.0ms811×2valid
276.0ms740×1valid
166.0ms417×3valid
Precisions
Click to see histograms. Total time spent on operations: 1.0s
ival-hypot: 479.0ms (47% of total)
ival-mult: 232.0ms (22.8% of total)
ival-sqrt: 144.0ms (14.1% of total)
ival-add: 92.0ms (9% of total)
adjust: 55.0ms (5.4% of total)
exact: 7.0ms (0.7% of total)
ival-true: 6.0ms (0.6% of total)
ival-assert: 3.0ms (0.3% of total)
Bogosity

explain220.0ms (3%)

Memory
-3.2MiB live, 320.4MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1180-0-(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
251(-2.1570917539962775e-138 -1.1767920992175387e-230)0-(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
220-2(-2.1570917539962775e-138 -1.1767920992175387e-230)(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
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-rescue1040
(+.f64 (*.f64 re re) (*.f64 im im))overflow104
(*.f64 re re)overflow50
(*.f64 im im)overflow69
+.f64(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation260
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue200
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 im im)underflow59
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow5
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow25
(*.f64 re re)underflow57
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow25
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue140
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 re re)underflow57
(*.f64 im im)underflow59
Confusion
Predicted +Predicted -
+1480
-0108
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+14800
-00108
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0108
1132
216
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
47.0ms414×0valid
45.0ms42×2valid
7.0ms20×3valid
6.0ms36×1valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 78.0ms
ival-sqrt: 35.0ms (45.1% of total)
ival-hypot: 19.0ms (24.5% of total)
ival-mult: 14.0ms (18% of total)
ival-add: 6.0ms (7.7% of total)
adjust: 3.0ms (3.9% of total)
exact: 1.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess38.0ms (0.5%)

Memory
-18.5MiB live, 63.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03075
19475
216575
325975
439675
552275
668275
782075
885075
01215
02015
13015
23215
03210
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.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.4%
(*.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)

simplify3.0ms (0%)

Memory
12.7MiB live, 12.7MiB 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
13075
23275
03249
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

localize46.0ms (0.6%)

Memory
-2.3MiB live, 116.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
accuracy4.766716863854144
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy5.537206002777931
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy27.46058091943699
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
24.0ms207×0valid
6.0ms21×2valid
4.0ms10×3valid
3.0ms18×1valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
ival-hypot: 8.0ms (31.2% of total)
ival-mult: 7.0ms (27.3% of total)
ival-add: 6.0ms (23.4% of total)
ival-sqrt: 2.0ms (7.8% of total)
adjust: 1.0ms (3.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series20.0ms (0.3%)

Memory
-10.7MiB live, 28.4MiB 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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (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)))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -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/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (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)))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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) (+ 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (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 (/ 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 im)
(* -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 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
Calls

6 calls:

TimeVariablePointExpression
5.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
@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))
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))
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))
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))

simplify242.0ms (3.3%)

Memory
-8.5MiB live, 241.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05002884
116592707
259302687
084592523
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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (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)))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -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/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (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)))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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) (+ 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (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 (/ 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 im)
(* -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 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) 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/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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 re #s(literal 1/16 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 (+.f64 im re) #s(literal 2 binary64))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(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 #s(literal 1/2 binary64) re) (/.f64 re im) 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 #s(literal 1/2 binary64) re) (/.f64 re im) im))
(+ im re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(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 (* (sqrt re) (pow (sqrt 2) 2)))
(sqrt.f64 re)
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/32 binary64) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) #s(literal -1/64 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* 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))) re)
(* 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)))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (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)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 2 binary64)) re)
(* 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 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 2 binary64))) re)
(* 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 #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)))) re)
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/512 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/256 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(* -1 (/ (+ (* -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)) (neg.f64 re))
(* -1 (/ (+ (* -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))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 #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))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -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 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 (/ (+ (* -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 #s(literal -1/2 binary64) (*.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/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)))))) (neg.f64 re))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal 1/4 binary64) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.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 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 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) (*.f64 #s(literal 2 binary64) re))
(+ (* 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)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (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/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (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) (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/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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) (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 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) 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 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im))) 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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64)))))
(* -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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (*.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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)))))
(* -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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 re (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (*.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 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (*.f64 (/.f64 (neg.f64 re) im) re)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (fma.f64 (/.f64 (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 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) 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 (* -1 (/ re im)))))
(fma.f64 (/.f64 re im) im (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) re) im) im (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(fma.f64 (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 #s(literal 1/2 binary64) (*.f64 re re))) im)) im) im (neg.f64 im))

rewrite179.0ms (2.5%)

Memory
12.5MiB live, 217.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01265
02065
16165
239865
3424965
0836738
Stop Event
iter limit
node limit
iter limit
Counts
6 → 285
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 #s(literal -1 binary64) (neg.f64 (pow.f64 (hypot.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 (+.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 (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 (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 re (hypot.f64 im 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 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 (hypot.f64 im re) 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 im re)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 im re)) re)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 im re)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 im re)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 im 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) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 2 binary64) (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 im 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 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 re (hypot.f64 im re)))
(/.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) #s(literal 2 binary64)) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 re (hypot.f64 im re)))
(/.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 (-.f64 re (hypot.f64 im 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)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 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 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.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)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) 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 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (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)) re)
(hypot.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 im (exp.f64 (log.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 (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 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (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 re (hypot.f64 im re)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 im re)) re)))
(*.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 im re)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 im re)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 im 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 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 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)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im 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 (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 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (pow.f64 (fma.f64 (-.f64 re (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)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (pow.f64 (fma.f64 (-.f64 re (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) (/.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))))
(pow.f64 (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 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 re (hypot.f64 im 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 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64))) (pow.f64 (fma.f64 (-.f64 re (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 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (-.f64 re (hypot.f64 im 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 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 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 im re))))
(/.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (-.f64 re (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 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 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64))) #s(literal 1 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 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 (-.f64 (hypot.f64 im re) re) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(/.f64 #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 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 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 re (hypot.f64 im re)))
(/.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 re (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 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 9 binary64))) (*.f64 (fma.f64 (-.f64 re (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 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im re)) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 im 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 (hypot.f64 im re) 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 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) 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)) 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)) 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 (+.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 (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)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 im re) re)))))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 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))))
(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 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))

eval98.0ms (1.4%)

Memory
4.0MiB live, 76.2MiB allocated
Compiler

Compiled 11 520 to 2 375 computations (79.4% saved)

prune17.0ms (0.2%)

Memory
-1.9MiB live, 34.4MiB allocated
Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New38313396
Fresh000
Picked101
Done000
Total38413397
Accuracy
89.9%
Counts
397 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.1%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
83.6%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
80.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re))))
45.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
56.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
53.3%
(*.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)))))
28.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
10.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))))
11.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
30.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))))
53.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
30.4%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 506 to 374 computations (26.1% saved)

simplify63.0ms (0.9%)

Memory
-7.2MiB live, 37.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 (hypot.f64 im re) re)
cost-diff0
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
cost-diff0
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
cost-diff0
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
cost-diff0
#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)))
cost-diff0
(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))))
cost-diff0
(*.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)))))
cost-diff0
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
cost-diff0
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
cost-diff0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
cost-diff0
(sqrt.f64 re)
cost-diff0
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 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
036273
059228
193228
2116228
3135228
4143228
5148228
6188228
7281228
8322228
9411228
10631228
11949228
121467228
131810228
141848228
151864228
161876228
01876228
Stop Event
iter limit
saturated
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)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
#s(literal 2 binary64)
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
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(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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
(+.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
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)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
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)))))
(*.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(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))))
(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 (* 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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(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 (/.f64 re im) #s(literal -2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.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 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
(sqrt.f64 (+.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 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize141.0ms (1.9%)

Memory
14.9MiB live, 176.3MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.00390625
(+.f64 (hypot.f64 im re) re)
accuracy0.24056625976844204
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.0
(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))))
accuracy0.00390625
(+.f64 (/.f64 re im) #s(literal 2 binary64))
accuracy0.05859375
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy17.491006965974748
#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)))
accuracy0.0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
accuracy0.0
(neg.f64 re)
accuracy0.00390625
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
accuracy36.722976377005075
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
accuracy0.0
(sqrt.f64 re)
accuracy17.77154813139108
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
accuracy0.0
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy0.0
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.0
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy0.00390625
(+.f64 (hypot.f64 im re) re)
Samples
32.0ms149×0valid
21.0ms107×0invalid
Compiler

Compiled 548 to 65 computations (88.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 37.0ms
ival-mult: 11.0ms (29.5% of total)
ival-hypot: 8.0ms (21.5% of total)
ival-sqrt: 8.0ms (21.5% of total)
ival-add: 7.0ms (18.8% of total)
ival-div: 2.0ms (5.4% of total)
ival-neg: 1.0ms (2.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series37.0ms (0.5%)

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

simplify179.0ms (2.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
07344512
124474217
083113991
Stop Event
iter limit
node limit
Counts
167 → 165
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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(sqrt re)
(* 1/2 (sqrt im))
(+ (* 1/4 (* (sqrt (/ 1 im)) re)) (* 1/2 (sqrt im)))
(+ (* 1/2 (sqrt im)) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (sqrt (/ 1 im))))))
(+ (* 1/2 (sqrt im)) (* re (+ (* 1/4 (sqrt (/ 1 im))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/16 (sqrt (/ 1 (pow im 3)))))))))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* -1 re)
2
(+ 2 (/ re im))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* 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)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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 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 (* (sqrt re) (sqrt 2)))
(* re (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2)))))
(* re (+ (* -1/32 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2))))))
(* re (+ (* -1/32 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2)))))))
(* (sqrt re) (sqrt 2))
(* re (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2)))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(/ re im)
(* re (+ (/ 1 im) (* 2 (/ 1 re))))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -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 (* (sqrt re) (pow (sqrt -1) 2)))
(* (pow re 2) (+ (* -1 (/ (- (* -2 (/ im re)) 2) re)) (/ 1 im)))
(* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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)))))
(/ (+ (* 2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* 2 im) (* 2 re))) (pow re 2)) im)
(+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (sqrt 2))))
(+ (* 1/2 (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/8 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(+ (* 1/2 (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* 1/8 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/4 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 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)))))
(/ (+ re (* 2 im)) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))))
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 im)
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(* -1/2 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 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))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 re im))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(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 re)
(+.f64 re im)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(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)
(sqrt re)
(sqrt.f64 re)
(* 1/2 (sqrt im))
(*.f64 (sqrt.f64 im) #s(literal 1/2 binary64))
(+ (* 1/4 (* (sqrt (/ 1 im)) re)) (* 1/2 (sqrt im)))
(fma.f64 (*.f64 #s(literal 1/4 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(+ (* 1/2 (sqrt im)) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 re #s(literal 1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 binary64))) re (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(+ (* 1/2 (sqrt im)) (* re (+ (* 1/4 (sqrt (/ 1 im))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/16 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/16 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 binary64))) re (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 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 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(* -1 re)
(neg.f64 re)
2
#s(literal 2 binary64)
(+ 2 (/ re im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/64 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/32 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* 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))) re)
(* 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)))) re)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) re)
(* 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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) re)
(* 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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(/ (pow re 2) im)
(*.f64 (/.f64 re im) re)
(* (pow re 2) (+ (/ 1 im) (* 2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 #s(literal 2 binary64) re) re (/.f64 re im)) 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 2 binary64) re) (/.f64 #s(literal 1 binary64) im))) (*.f64 re re))
(* 1/2 (* (sqrt re) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re))
(* re (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2)))))
(*.f64 (fma.f64 (*.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/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) re)
(* re (+ (* -1/32 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.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/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
(* re (+ (* -1/32 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/32 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.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/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
(* (sqrt re) (sqrt 2))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(* re (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 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) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(/ re im)
(/.f64 re im)
(* re (+ (/ 1 im) (* 2 (/ 1 re))))
(fma.f64 (/.f64 #s(literal 2 binary64) re) re (/.f64 re im))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.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 -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 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)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (* (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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 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)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(* -1 (/ (+ (* -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)) (neg.f64 re))
(* -1 (/ (+ (* -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))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -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 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 (/ (+ (* -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 #s(literal -1/2 binary64) (*.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/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)))))) (neg.f64 re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(* (pow re 2) (+ (* -1 (/ (- (* -2 (/ im re)) 2) 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 (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal -1 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 -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 1/2 binary64)))
(+ (* 1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (sqrt 1/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 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 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 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (/.f64 (sqrt.f64 #s(literal -1 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 -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 1 binary64))) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re))))) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re))))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.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 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 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) (*.f64 #s(literal 2 binary64) re))
(+ (* 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)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(/ (+ (* 2 (* im re)) (pow re 2)) im)
(/.f64 (*.f64 re (fma.f64 #s(literal 2 binary64) im re)) im)
(/ (+ (* im (+ (* 2 im) (* 2 re))) (pow re 2)) im)
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (+.f64 re im)) im (*.f64 re re)) im)
(+ (* 1/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/2 (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/8 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)))
(+ (* 1/2 (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* 1/8 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/4 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/4 binary64) (*.f64 (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/4 binary64))) (*.f64 im im) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)))
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(/ (+ re (* 2 im)) im)
(/.f64 (fma.f64 #s(literal 2 binary64) im re) 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (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/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (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) (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/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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))) im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im))) im im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64)))) im im)
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (*.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 2 binary64))) (sqrt.f64 #s(literal -1 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 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (*.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 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.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)) im)) (neg.f64 im))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal -2 binary64)) (neg.f64 im))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(*.f64 (fma.f64 (/.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) im) #s(literal -1 binary64) #s(literal -2 binary64)) (neg.f64 im))
(* -1/2 (* (sqrt im) (sqrt -1)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (-.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 im)) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (sqrt im) (sqrt -1)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 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 -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (-.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 im)) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (*.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64)))) im im))

rewrite171.0ms (2.4%)

Memory
6.0MiB live, 282.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036240
059194
1198194
21135194
08391194
Stop Event
iter limit
node limit
iter limit
Counts
21 → 380
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)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) 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)))))
(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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(sqrt.f64 #s(literal 2 binary64))
Outputs
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (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 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(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 re (hypot.f64 re im)) (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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(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 re (hypot.f64 re im)) (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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 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 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (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 re (hypot.f64 re im)) (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)))) (fma.f64 #s(literal -1 binary64) (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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re (hypot.f64 re im)) (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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re (hypot.f64 re im)) (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 re (hypot.f64 re im)) (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 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 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 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 re im))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (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 re (hypot.f64 re im)) (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 #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 #s(literal 1 binary64) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(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 (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 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.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 (fma.f64 #s(literal -1 binary64) (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 re (hypot.f64 re im)) (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 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (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 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 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 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.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))) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 re im) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(neg.f64 (/.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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) 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)))) 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)))) 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)) 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)))) 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)))) 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)) 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))))) 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))))) 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))) 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))) 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)) 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)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 re im))
(fma.f64 #s(literal 1 binary64) re (hypot.f64 re im))
(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 (neg.f64 re) #s(literal -1 binary64) (hypot.f64 re im))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 re #s(literal 1 binary64) (hypot.f64 re im))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 re (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 2 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 re #s(literal 1/4 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 (*.f64 re re) #s(literal 1/4 binary64))
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))) (fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) #s(literal 8 binary64) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(fma.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(+.f64 (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(*.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))))
(*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))) (+.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (*.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))) (neg.f64 (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (*.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 re re))) (*.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(neg.f64 (/.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(fma.f64 #s(literal -1 binary64) (neg.f64 re) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 #s(literal 1 binary64) re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(fma.f64 (neg.f64 re) #s(literal -1 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 re #s(literal 1 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(-.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(+.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
(+.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(*.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))
(*.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 (pow.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/4 binary64)) (pow.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/4 binary64)))
(pow.f64 (exp.f64 (log.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))
(pow.f64 (*.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 (* 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/4 binary64))
(pow.f64 (pow.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/4 binary64)) #s(literal 2 binary64))
(pow.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))
(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))))
(exp.f64 (*.f64 (log.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 (* 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 (-.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 #s(literal 2 binary64) im) (*.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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (pow.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (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))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (*.f64 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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #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 #s(literal 2 binary64) im) (*.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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (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 #s(literal 2 binary64) im) (*.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 #s(literal 4 binary64) (*.f64 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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) im) (*.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 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (*.f64 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 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 im im) (*.f64 (*.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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))
(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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(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 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(fma.f64 (*.f64 (-.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 #s(literal 2 binary64) im))
(fma.f64 (*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) re) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(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 #s(literal 2 binary64) im))
(fma.f64 (*.f64 re (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(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 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(fma.f64 #s(literal 2 binary64) im (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(fma.f64 re (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 im #s(literal 2 binary64) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.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 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 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 (+.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 #s(literal 2 binary64) im))
(+.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (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 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 1/4 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (sqrt.f64 (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (pow.f64 (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(/.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))))
(sqrt.f64 (+.f64 (hypot.f64 re im) re))
(hypot.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 re))
(hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (sqrt.f64 re))
(hypot.f64 (sqrt.f64 re) (sqrt.f64 (hypot.f64 re im)))
(hypot.f64 (sqrt.f64 re) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(*.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re re #s(literal 0 binary64))))
(*.f64 #s(literal -1 binary64) re)
(*.f64 #s(literal 1 binary64) (neg.f64 re))
(*.f64 (neg.f64 re) #s(literal 1 binary64))
(*.f64 re #s(literal -1 binary64))
(/.f64 (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (neg.f64 (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 re) re) re)
(/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 #s(literal 0 binary64) (neg.f64 re)))))
(/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (fma.f64 re re #s(literal 0 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 re) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re #s(literal 0 binary64)) (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(/.f64 (*.f64 re re) (neg.f64 re))
(neg.f64 re)
(-.f64 (/.f64 #s(literal 0 binary64) re) re)
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 re re #s(literal 0 binary64))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re re #s(literal 0 binary64))))
(-.f64 #s(literal 0 binary64) re)
(+.f64 #s(literal 0 binary64) (neg.f64 re))
(*.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 re im) #s(literal 2 binary64))))
(*.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.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 #s(literal 1 binary64) (+.f64 (/.f64 re im) #s(literal 2 binary64)))
(*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64))))))
(*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64)))) (*.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))))) (+.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (fma.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)))) (neg.f64 (fma.f64 #s(literal -1 binary64) (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 #s(literal 2 binary64) (/.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 #s(literal -1 binary64) (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 2 binary64) (/.f64 re im)) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64)))) (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (+.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal -1/2 binary64)) (pow.f64 (/.f64 im re) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(fma.f64 (/.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im) #s(literal 2 binary64))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) #s(literal 2 binary64))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) re #s(literal 2 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 re im) #s(literal 2 binary64))
(fma.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal -1 binary64)) (neg.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(fma.f64 (/.f64 re im) #s(literal 1 binary64) #s(literal 2 binary64))
(fma.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64))
(fma.f64 re (pow.f64 im #s(literal -1 binary64)) #s(literal 2 binary64))
(-.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 2 binary64) (/.f64 re im))) (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(-.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(-.f64 #s(literal 2 binary64) (/.f64 (neg.f64 re) im))
(+.f64 (/.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (neg.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(+.f64 #s(literal 2 binary64) (/.f64 re im))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))

eval161.0ms (2.2%)

Memory
-9.8MiB live, 156.2MiB allocated
Compiler

Compiled 21 019 to 3 069 computations (85.4% saved)

prune28.0ms (0.4%)

Memory
12.2MiB live, 48.4MiB allocated
Pruning

14 alts after pruning (9 fresh and 5 done)

PrunedKeptTotal
New6078615
Fresh718
Picked055
Done000
Total61414628
Accuracy
89.9%
Counts
628 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.1%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
30.3%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
80.8%
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
83.6%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
56.4%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
28.8%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
10.1%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
11.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
30.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
53.1%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
45.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
53.3%
(*.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)))))
30.4%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 463 to 339 computations (26.8% saved)

simplify389.0ms (5.3%)

Memory
6.9MiB live, 204.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
039380
067292
196292
2124292
3175292
4226292
5260292
6321292
7756292
82114292
93341292
104296292
115958292
126351292
136510292
146612292
156646292
166872292
177404292
187489292
197546292
207569292
217576292
227581292
237583292
08532292
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(sqrt.f64 (hypot.f64 re im))
(hypot.f64 re im)
re
im
#s(literal 2 binary64)
#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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
#s(literal 4 binary64)
re
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
re
#s(literal 4 binary64)
#s(literal 1/2 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) 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 im re) re))))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 (hypot.f64 im re) re)
(sqrt.f64 (hypot.f64 re im))
(sqrt.f64 (hypot.f64 im re))
(hypot.f64 re im)
(hypot.f64 im re)
re
im
#s(literal 2 binary64)
#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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
#s(literal 4 binary64)
re
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
re
#s(literal 4 binary64)
#s(literal 1/2 binary64)

localize122.0ms (1.7%)

Memory
-6.9MiB live, 149.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.08822250976844201
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
accuracy3.7732459231384317
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)))
accuracy43.91030261312246
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
accuracy0.0
(*.f64 im im)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
accuracy8.300489903635931
(/.f64 (*.f64 im im) re)
accuracy43.91030261312246
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
accuracy0.0
(neg.f64 im)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
accuracy8.300489903635931
(/.f64 (*.f64 (neg.f64 im) im) re)
accuracy49.92082156092224
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
accuracy0.0
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
accuracy0.0
(*.f64 #s(literal 2 binary64) im)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy30.315825257848125
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.0
(sqrt.f64 (hypot.f64 re im))
accuracy0.0078125
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
accuracy4.766716863854144
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
accuracy12.364063478483818
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
Samples
52.0ms207×0valid
12.0ms21×2valid
8.0ms10×3valid
7.0ms18×1valid
Compiler

Compiled 726 to 71 computations (90.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 58.0ms
ival-mult: 24.0ms (41.2% of total)
ival-hypot: 12.0ms (20.6% of total)
ival-sqrt: 7.0ms (12% of total)
ival-div: 5.0ms (8.6% of total)
ival-add: 5.0ms (8.6% of total)
adjust: 3.0ms (5.2% of total)
ival-neg: 1.0ms (1.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series26.0ms (0.4%)

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

6 calls:

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

simplify193.0ms (2.7%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
05983137
119572923
265832798
085662639
Stop Event
iter limit
node limit
Counts
122 → 121
Calls
Call 1
Inputs
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(* -1 (/ (pow im 2) re))
(/ (pow im 2) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) re)
(* (pow 1 1/4) (sqrt im))
(+ (* 1/4 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 3))) (pow re 2)))) (* (pow 1 1/4) (sqrt im)))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 7))) (pow re 2)))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))))))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow im 7))))) (* 7/128 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 11))) (pow re 2)))))))))
(/ (pow im 2) (pow re 2))
(/ (+ (* 4 (pow re 2)) (pow im 2)) (pow re 2))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(sqrt re)
(+ (sqrt re) (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))) (* (sqrt (/ 1 (pow re 11))) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6))))))))
4
(+ 4 (/ (pow im 2) (pow re 2)))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -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 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4)))
(* (sqrt re) (sqrt -1))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt -1)))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))))))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (+ (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))) (* (sqrt (/ 1 (pow re 11))) (* (sqrt -1) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6)))))))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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)))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(* (pow 1 1/4) (sqrt re))
(+ (* 1/4 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 3)))))) (* (pow 1 1/4) (sqrt re)))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 7)))))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))))))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow re 7))))) (* 7/128 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 11)))))))))))
(* -1 im)
(pow im 2)
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(sqrt im)
(+ (sqrt im) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (+ (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))) (* (sqrt (/ 1 (pow im 11))) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6))))))))
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* (sqrt im) (sqrt -1))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (* (sqrt im) (sqrt -1)))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))))))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (+ (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))) (* (sqrt (/ 1 (pow im 11))) (* (sqrt -1) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6)))))))))
Outputs
im
(+ im re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re 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))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (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))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) re))
(* (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)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) re (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (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))) (* 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 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) re (sqrt.f64 im)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) re))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 im re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) re)
(/.f64 (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 im im)) re)
(* (pow 1 1/4) (sqrt im))
(sqrt.f64 im)
(+ (* 1/4 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 3))) (pow re 2)))) (* (pow 1 1/4) (sqrt im)))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 7))) (pow re 2)))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -3/32 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 re re) (sqrt.f64 im))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow im 7))))) (* 7/128 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 11))) (pow re 2)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) #s(literal -3/32 binary64))) (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 re re) (sqrt.f64 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)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* 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)) re)
(* 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))) re)
(* 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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(sqrt.f64 re)
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/64 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/32 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* 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))) re)
(* 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)))) re)
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re)))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))) (* (sqrt (/ 1 (pow re 11))) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6))))))))
(+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 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))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -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))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 (/ (+ (* -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)))))) (neg.f64 re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.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 -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/512 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (* (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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/256 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (+ (* -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)) (neg.f64 re))
(* -1 (/ (+ (* -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))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4)))
(*.f64 (neg.f64 re) (-.f64 #s(literal -4 binary64) (/.f64 (/.f64 (*.f64 im im) re) re)))
(* (sqrt re) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt -1)))
(fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 re))))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (+ (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))) (* (sqrt (/ 1 (pow re 11))) (* (sqrt -1) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6)))))))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 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) (*.f64 #s(literal 2 binary64) re))
(+ (* 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)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 im im) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.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 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(* (pow 1 1/4) (sqrt re))
(sqrt.f64 re)
(+ (* 1/4 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 3)))))) (* (pow 1 1/4) (sqrt re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 7)))))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow re 7))))) (* 7/128 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 11)))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) #s(literal -3/32 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (sqrt.f64 re))
(* -1 im)
(neg.f64 im)
(pow im 2)
(*.f64 im im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 re im))) im im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (*.f64 #s(literal 1/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/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.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))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) 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 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64))) im)
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 re im) im) #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) re)) im) im)
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))))
(fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im)))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (+ (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))) (* (sqrt (/ 1 (pow im 11))) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6))))))))
(+.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64))))))) (sqrt.f64 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))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal -1/2 binary64) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.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)) im)) (neg.f64 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 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.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))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.f64 (neg.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (*.f64 re (-.f64 #s(literal 2 binary64) (/.f64 re im))) im)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (-.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)) (neg.f64 im))
(* (sqrt im) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (* (sqrt im) (sqrt -1)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im)))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))))))
(fma.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (+ (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))) (* (sqrt (/ 1 (pow im 11))) (* (sqrt -1) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6)))))))))
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))))

rewrite159.0ms (2.2%)

Memory
-6.6MiB live, 236.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039352
067267
1202267
21152267
08389267
Stop Event
iter limit
node limit
iter limit
Counts
25 → 437
Calls
Call 1
Inputs
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 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)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))
(sqrt.f64 (hypot.f64 re im))
(neg.f64 im)
(/.f64 (*.f64 im im) re)
(*.f64 im im)
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
Outputs
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 im re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.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 (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 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.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 (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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))) (*.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 re (hypot.f64 im re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re))) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 im re) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) 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)))) 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)))) 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)) 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 (fma.f64 re re (*.f64 (neg.f64 im) im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) 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))))) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) 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))) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) 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)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (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 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re)
(fma.f64 re #s(literal 1 binary64) (hypot.f64 im re))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 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 (*.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)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(+.f64 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im 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 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64)))
(*.f64 (*.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)))) (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im 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 (*.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) (hypot.f64 im re)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.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 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im 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 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) re) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re) (-.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) (hypot.f64 im re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 #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 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(fma.f64 #s(literal 2 binary64) (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 re #s(literal 2 binary64)))
(fma.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 re #s(literal 2 binary64)))
(+.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 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))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.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))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 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)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (neg.f64 (pow.f64 im #s(literal -2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (/.f64 (*.f64 im im) re))
(fma.f64 #s(literal 0 binary64) (/.f64 im re) (/.f64 (*.f64 (neg.f64 im) im) re))
(fma.f64 (/.f64 im re) #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 re im)) (/.f64 (*.f64 im im) re))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 (neg.f64 im) im))) #s(literal -1 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) (/.f64 im re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(+.f64 (*.f64 (/.f64 im re) #s(literal 0 binary64)) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(*.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -16 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))))
(*.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))))))
(*.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))))
(*.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(*.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 4 binary64) re) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))) (*.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))) (fma.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))) (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (fma.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (*.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -16 binary64) (*.f64 re re)))) (neg.f64 (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64))))) (neg.f64 (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (*.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))) (*.f64 (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))
(/.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -16 binary64) (*.f64 re re))) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 4 binary64) re) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))))))
(/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -16 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 4 binary64) re) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))) (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
(/.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 4 binary64) re) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))))
(/.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)))) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)))) (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))))))
(neg.f64 (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (neg.f64 (fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 (/.f64 (*.f64 im im) re) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re)))))))
(fma.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 #s(literal 4 binary64) re))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (/.f64 (neg.f64 im) re) (neg.f64 im) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (neg.f64 im) im) (*.f64 #s(literal 4 binary64) re))
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(fma.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) re))) (neg.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))))
(fma.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(fma.f64 (/.f64 im re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1 binary64) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal 4 binary64) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 (neg.f64 im) (/.f64 (neg.f64 im) re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 im (/.f64 im re) (*.f64 #s(literal 4 binary64) re))
(fma.f64 re #s(literal 4 binary64) (/.f64 (*.f64 im im) re))
(-.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))) (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 (/.f64 im re) im (*.f64 #s(literal -4 binary64) re))))
(-.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))))
(-.f64 (*.f64 #s(literal 4 binary64) re) (/.f64 (*.f64 (neg.f64 im) im) re))
(+.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re))) (neg.f64 (/.f64 (pow.f64 (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 (neg.f64 im) im) re)))))
(+.f64 (*.f64 #s(literal 4 binary64) re) (/.f64 (*.f64 im im) re))
(+.f64 (/.f64 (*.f64 im im) re) (*.f64 #s(literal 4 binary64) re))
(*.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) 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))) 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 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 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 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)
(*.f64 re (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal 4 binary64) re)))
(/.f64 (-.f64 (*.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (-.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) re)))
(/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))) (-.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re)))
(/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (fma.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal 4 binary64) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64))) (fma.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) re)))))
(/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 64 binary64) (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 #s(literal 16 binary64) (*.f64 re re) (-.f64 (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re)) (*.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re)))))
(/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 64 binary64) (pow.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 #s(literal 16 binary64) (*.f64 re re) (-.f64 (*.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) re)) (fma.f64 #s(literal -1 binary64) (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))) 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 re (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (fma.f64 #s(literal -1 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (neg.f64 (*.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 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) 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))) 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 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 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 #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)) 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))) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.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 re (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))))
(/.f64 re (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re (*.f64 #s(literal 4 binary64) re))
(fma.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(fma.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1 binary64) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(fma.f64 #s(literal 4 binary64) re (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(fma.f64 #s(literal 4 binary64) re (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(fma.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) re))
(fma.f64 re #s(literal 4 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(fma.f64 re #s(literal 4 binary64) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(+.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal 4 binary64) re))
(+.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(*.f64 (pow.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/4 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 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/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 1 binary64))
(pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (sqrt.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (sqrt.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)))))
(/.f64 (sqrt.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.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 (hypot.f64 im re))
(fabs.f64 (neg.f64 (sqrt.f64 (hypot.f64 im re))))
(fabs.f64 (sqrt.f64 (hypot.f64 im re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 im re))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (sqrt.f64 (hypot.f64 im re))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 im im #s(literal 0 binary64))))
(*.f64 #s(literal -1 binary64) im)
(*.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (neg.f64 im) #s(literal 1 binary64))
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im #s(literal 0 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 im (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 im) im) im)
(neg.f64 im)
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 im im #s(literal 0 binary64))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im #s(literal 0 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(*.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 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (neg.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 #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 im re) (/.f64 #s(literal 1 binary64) (pow.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 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (neg.f64 im) (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(/.f64 im (/.f64 re im))
(neg.f64 (*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) #s(literal 1 binary64)))
(neg.f64 (/.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 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) im))
(*.f64 #s(literal 1 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal 1 binary64))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 (neg.f64 im) #s(literal 2 binary64))
(pow.f64 im #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (pow.f64 im #s(literal 6 binary64)))) (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im)))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (neg.f64 im) im))
(neg.f64 (*.f64 (neg.f64 im) im))
(fma.f64 #s(literal 0 binary64) (neg.f64 im) (*.f64 im im))
(fma.f64 (neg.f64 im) #s(literal 0 binary64) (*.f64 im im))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(+.f64 (*.f64 (neg.f64 im) #s(literal 0 binary64)) (*.f64 im im))
(+.f64 (*.f64 #s(literal 0 binary64) (neg.f64 im)) (*.f64 im im))
(+.f64 #s(literal 0 binary64) (*.f64 im im))
(*.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) (fma.f64 #s(literal -1 binary64) (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 #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 1 binary64) (+.f64 #s(literal 16 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 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)))
(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 (fma.f64 #s(literal -1 binary64) (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))) (fma.f64 #s(literal -1 binary64) (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 2 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 #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 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 (+.f64 #s(literal 16 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 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 #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 2 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))))
(neg.f64 (/.f64 (neg.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))))
(neg.f64 (/.f64 (neg.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)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (fma.f64 #s(literal -1 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(neg.f64 (/.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))))))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 im) im) re) #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 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) re) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (/.f64 im re) re) #s(literal 4 binary64))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (/.f64 (neg.f64 im) re) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) (pow.f64 re #s(literal -2 binary64)) #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 #s(literal 1 binary64) (pow.f64 im #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) re) (pow.f64 im #s(literal -1 binary64))) #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 (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 #s(literal -1 binary64) (neg.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #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 #s(literal 1 binary64) (pow.f64 (/.f64 (neg.f64 im) re) #s(literal 2 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 (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 (/.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) (*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 #s(literal -1 binary64) re)) #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 (/.f64 (*.f64 (neg.f64 im) im) re) (/.f64 #s(literal -1 binary64) 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 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) (neg.f64 re))) #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 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)))

eval131.0ms (1.8%)

Memory
-13.9MiB live, 137.8MiB allocated
Compiler

Compiled 20 035 to 3 193 computations (84.1% saved)

prune23.0ms (0.3%)

Memory
22.7MiB live, 61.6MiB allocated
Pruning

19 alts after pruning (12 fresh and 7 done)

PrunedKeptTotal
New58610596
Fresh224
Picked325
Done055
Total59119610
Accuracy
92.5%
Counts
610 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
11.8%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
52.7%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
83.1%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
30.3%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
83.6%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
56.4%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
10.1%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
30.5%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))
6.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im #s(literal 0 binary64))) im) re))) #s(literal 1/2 binary64))
11.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
14.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
11.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
53.1%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
10.6%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
49.5%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
45.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
53.3%
(*.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)))))
30.4%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 720 to 512 computations (28.9% saved)

simplify127.0ms (1.8%)

Memory
12.3MiB live, 49.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
051495
081415
1126415
2170415
3209415
4276415
5433415
6787415
71584415
82857415
93350415
103547415
113661415
123737415
133797415
143829415
153829415
163837415
03837343
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(+.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 (neg.f64 im) re)
(neg.f64 im)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(/.f64 #s(literal -1 binary64) re)
#s(literal -1 binary64)
re
(*.f64 im im)
im
#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))))
#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 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(pow.f64 im #s(literal 4 binary64))
im
#s(literal 4 binary64)
re
(/.f64 #s(literal -1/4 binary64) re)
#s(literal -1/4 binary64)
(*.f64 im im)
(neg.f64 re)
#s(literal 1/2 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) 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 (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(+.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 (neg.f64 im) re)
(neg.f64 im)
im
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 #s(literal -1 binary64) re)
#s(literal -1 binary64)
re
(*.f64 im im)
im
#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 (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 (fma.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 (fma.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 (fma.f64 re re (*.f64 im im))) re)
(+.f64 (hypot.f64 im re) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 im re)
(fma.f64 re re (*.f64 im im))
(fma.f64 im im (*.f64 re re))
re
(*.f64 im im)
im
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))
(/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(pow.f64 im #s(literal 4 binary64))
im
#s(literal 4 binary64)
re
(/.f64 #s(literal -1/4 binary64) re)
#s(literal -1/4 binary64)
(*.f64 im im)
(neg.f64 re)
#s(literal 1/2 binary64)

localize212.0ms (2.9%)

Memory
-12.7MiB live, 236.3MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))))
accuracy6.3959552818427925
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))
accuracy18.559513478663852
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
accuracy49.727900144574534
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))
accuracy0.0078125
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
accuracy4.766716863854144
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
accuracy5.537206002777931
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
accuracy27.46058091943699
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.0
(*.f64 im im)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))))
accuracy8.328497423172815
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
accuracy49.92082156092224
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
accuracy0.0
(neg.f64 im)
accuracy0.1640625
(*.f64 (/.f64 (neg.f64 im) re) im)
accuracy4.766716863854144
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
accuracy49.92082156092224
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
accuracy0.0
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.0078125
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
accuracy4.766716863854144
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
accuracy27.90174748879344
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
Samples
98.0ms207×0valid
48.0ms10×3valid
20.0ms21×2valid
10.0ms18×1valid
Compiler

Compiled 919 to 93 computations (89.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 150.0ms
ival-add: 37.0ms (24.7% of total)
ival-div: 33.0ms (22% of total)
ival-mult: 31.0ms (20.7% of total)
ival-hypot: 30.0ms (20% of total)
ival-sqrt: 9.0ms (6% of total)
adjust: 4.0ms (2.7% of total)
ival-pow: 3.0ms (2% of total)
ival-neg: 2.0ms (1.3% of total)
exact: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series30.0ms (0.4%)

Memory
-21.7MiB live, 52.6MiB allocated
Counts
24 → 119
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))
(neg.f64 im)
(*.f64 im im)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im 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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* -1 (/ (pow im 2) re))
(* 1/4 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(+ 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/4 (/ (pow im 4) (pow re 2)))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* 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)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 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)))))))
(pow im 2)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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) (- (* 1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* -1 im)
(+ 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 (* -1/4 (/ (pow im 2) (pow re 2)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ 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 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) 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
8.0ms
re
@0
((* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (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) (* (/ (neg im) re) im) (* (/ -1 re) (* im 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) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (neg re)) (neg im) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)))
6.0ms
im
@0
((* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (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) (* (/ (neg im) re) im) (* (/ -1 re) (* im 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) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (neg re)) (neg im) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)))
4.0ms
im
@-inf
((* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (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) (* (/ (neg im) re) im) (* (/ -1 re) (* im 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) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (neg re)) (neg im) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)))
4.0ms
re
@-inf
((* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (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) (* (/ (neg im) re) im) (* (/ -1 re) (* im 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) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (neg re)) (neg im) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)))
3.0ms
im
@inf
((* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (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) (* (/ (neg im) re) im) (* (/ -1 re) (* im 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) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (neg re)) (neg im) (* im im) (sqrt (+ (* re re) (* im im))) (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)))

simplify183.0ms (2.5%)

Memory
27.8MiB live, 217.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05242994
117062815
260582701
080872541
Stop Event
iter limit
node limit
Counts
119 → 117
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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (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/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (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 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* -1 (/ (pow im 2) re))
(* 1/4 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(+ 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/4 (/ (pow im 4) (pow re 2)))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* 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)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* 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 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 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)))))))
(pow im 2)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -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 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 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) (- (* 1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* -1 im)
(+ 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 (* -1/4 (/ (pow im 2) (pow re 2)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -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/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (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 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ 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 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (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/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (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 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) 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))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/16 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 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))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64))) (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) #s(literal -1/32 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/16 binary64))))))
(* (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)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 re (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) (*.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 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (sqrt.f64 im)) (*.f64 (*.f64 re re) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) re (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))))))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 (+.f64 im re) #s(literal 2 binary64))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(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 re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(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 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(* 1/4 (/ (pow im 4) (pow re 3)))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64))))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(/.f64 (fma.f64 (*.f64 (neg.f64 re) re) (*.f64 im im) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64))) (pow.f64 re #s(literal 3 binary64)))
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re im) 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 #s(literal 1/2 binary64) re) (/.f64 re im) im))
(* -1/4 (/ (pow im 4) (pow re 2)))
(*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) im) im (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64))) (*.f64 re re))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(sqrt.f64 re)
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) #s(literal -1/64 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/32 binary64))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)) #s(literal -1/32 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/16 binary64))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* 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))) re)
(* 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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/4 binary64) (pow.f64 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)))) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* 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)) re)
(* 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))) re)
(* 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)))) re)
(/ (+ (* -1 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 2)))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal 1/4 binary64) re) (*.f64 (neg.f64 im) im)) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(pow im 2)
(*.f64 im im)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 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 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/512 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (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 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 1/256 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (+ (* -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)) (neg.f64 re))
(* -1 (/ (+ (* -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))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -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 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -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))))) (neg.f64 re))
(* -1 (/ (+ (* -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 #s(literal -1/2 binary64) (*.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/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)))))) (neg.f64 re))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.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/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 im im) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal 1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 im im) (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.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 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 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) (*.f64 #s(literal 2 binary64) re))
(+ (* 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)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) 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))
(* -1 im)
(neg.f64 im)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(* (pow im 2) (+ 1 (* -1/4 (/ (pow im 2) (pow re 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #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 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) (*.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/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) (*.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))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) 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 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (+.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64))) im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) (/.f64 re im))) im im)
(* (pow im 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) re))) (pow.f64 im #s(literal 4 binary64)))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) 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)
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) im) im) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 im #s(literal 4 binary64)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) (*.f64 (neg.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/2 binary64)) re (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (*.f64 re (-.f64 #s(literal 2 binary64) (/.f64 re im))) im)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (-.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)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/8 binary64) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 (/.f64 re im) re) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #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))

rewrite217.0ms (3%)

Memory
2.2MiB live, 251.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051440
081360
1247360
21300360
08340288
Stop Event
iter limit
node limit
iter limit
Counts
24 → 520
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re))
(neg.f64 im)
(*.f64 im im)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 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) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (/.f64 #s(literal -1 binary64) im)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im)))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im)))
(neg.f64 (*.f64 (/.f64 im re) im))
(neg.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (/.f64 #s(literal -1 binary64) im)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im)))
(neg.f64 (/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im)))
(neg.f64 (*.f64 (/.f64 im re) im))
(neg.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.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) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 im 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 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 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 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(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 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(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 re #s(literal 2 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(+.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.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 #s(literal 1 binary64) (-.f64 re (hypot.f64 im re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.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 (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 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.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 (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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))) (*.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 re (hypot.f64 im re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 (hypot.f64 im re) (-.f64 (hypot.f64 im re) re))) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 im re) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im 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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) 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 im re) (-.f64 re im)))) 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)))) 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)) 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)))) 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)))) 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)) 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))))) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) 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))) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) 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)) 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) 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 (neg.f64 re) #s(literal -1 binary64) (hypot.f64 im re))
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re)
(fma.f64 re #s(literal 1 binary64) (hypot.f64 im re))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 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 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))
(-.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 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))))
(*.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) re) (/.f64 (pow.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) re))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64)) (/.f64 (pow.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) re))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re)) (pow.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) re)))
(*.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) re)))
(*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) #s(literal -1 binary64))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re))))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(*.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))
(*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))) (+.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (*.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))
(/.f64 (neg.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)))
(/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) re)
(/.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re)) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) (*.f64 re (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) re))
(/.f64 (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) re))
(/.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) re))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (*.f64 (neg.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) re) (*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)) (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) re) (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 re) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))) (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) re)
(/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))
(/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 re (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(neg.f64 (/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) (neg.f64 re)))
(neg.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(neg.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(fma.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 im re) (neg.f64 im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 im re) (neg.f64 im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (/.f64 #s(literal -1 binary64) im)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (/.f64 #s(literal -1 binary64) im)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 im im) #s(literal -1 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 im im) #s(literal -1 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 im (/.f64 (neg.f64 im) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 im (/.f64 (neg.f64 im) re) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(-.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))))
(-.f64 (/.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (neg.f64 re)) (/.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (neg.f64 re)))
(-.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(+.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(+.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 im im #s(literal 0 binary64))))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) im))
(*.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 #s(literal -1 binary64) im)
(*.f64 (neg.f64 im) #s(literal 1 binary64))
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im #s(literal 0 binary64)))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 #s(literal 1 binary64) (/.f64 im (*.f64 (neg.f64 im) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) im))
(/.f64 (*.f64 im im) (neg.f64 im))
(/.f64 (neg.f64 im) #s(literal 1 binary64))
(/.f64 im #s(literal -1 binary64))
(neg.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)))
(neg.f64 im)
(-.f64 (/.f64 #s(literal 0 binary64) im) (/.f64 (*.f64 im im) im))
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 im im #s(literal 0 binary64))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im #s(literal 0 binary64))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 im) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(*.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 im im))
(*.f64 (*.f64 im im) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) im))
(*.f64 (neg.f64 im) (neg.f64 im))
(*.f64 im im)
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 im) im))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) im))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.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 im re) (-.f64 re im)))))
(*.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)))))
(*.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)))
(*.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)))))
(*.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)))))
(*.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)))
(*.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))))))
(*.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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(*.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))))
(*.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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.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)))
(*.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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (hypot.f64 im re) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 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 im re) (-.f64 re im)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (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 (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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fabs.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (fabs.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im)))))
(/.f64 (fabs.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (fabs.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (fabs.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fabs.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (fabs.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fabs.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #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 (neg.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (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 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) (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 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (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) (/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (hypot.f64 im re)))
(fabs.f64 (hypot.f64 im re))
(hypot.f64 (exp.f64 (log.f64 re)) (neg.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 (neg.f64 re) (neg.f64 im))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 (neg.f64 im) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 im) (neg.f64 re))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(exp.f64 (*.f64 (log.f64 (hypot.f64 im re)) #s(literal 1 binary64)))
(exp.f64 (log.f64 (hypot.f64 im re)))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)))))
(*.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))))
(*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))
(*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(pow.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))) (*.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (*.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (+.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))))
(/.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))) (+.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(neg.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(fma.f64 (/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal 1 binary64)) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal -1 binary64)) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal 1 binary64)) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1 binary64)) (/.f64 #s(literal 1/4 binary64) re) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (/.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (/.f64 (*.f64 (*.f64 im im) (/.f64 #s(literal -1/4 binary64) re)) re) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 (*.f64 (*.f64 im im) (/.f64 #s(literal -1/4 binary64) re)) (neg.f64 re)) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) (neg.f64 re)) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (*.f64 (/.f64 im re) im) (/.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) re) (*.f64 im im))
(fma.f64 (*.f64 (/.f64 im re) im) (/.f64 (*.f64 (/.f64 im re) im) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) re)) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -2 binary64)) (*.f64 im im))
(fma.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(fma.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 im) #s(literal 2 binary64)) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (/.f64 re (pow.f64 im #s(literal 4 binary64))))) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (neg.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re #s(literal -4 binary64)) (neg.f64 re))) (*.f64 im im))
(fma.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (*.f64 re #s(literal -4 binary64)))) (*.f64 im im))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal -2 binary64)) (*.f64 im im))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 4 binary64))))) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) re)) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re #s(literal -4 binary64)) re)) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re (*.f64 re #s(literal -4 binary64))) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 im im (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 im im (*.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)))))
(-.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(-.f64 #s(literal 0 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(+.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(+.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 im im))
(+.f64 (*.f64 im im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))

eval144.0ms (2%)

Memory
14.5MiB live, 200.8MiB allocated
Compiler

Compiled 24 173 to 3 315 computations (86.3% saved)

prune61.0ms (0.8%)

Memory
-22.3MiB live, 64.9MiB allocated
Pruning

18 alts after pruning (8 fresh and 10 done)

PrunedKeptTotal
New6134617
Fresh347
Picked145
Done167
Total61818636
Accuracy
92.6%
Counts
636 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
14.6%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
52.7%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
30.3%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
83.6%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
56.4%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
11.5%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 #s(approx (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #s(literal 1 binary64)) im) im)) (neg.f64 re)))) #s(literal 1/2 binary64))
30.5%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))
11.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
14.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
11.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
53.1%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
9.7%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
13.4%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
49.5%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
45.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
53.3%
(*.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)))))
30.4%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 1 348 to 527 computations (60.9% saved)

regimes107.0ms (1.5%)

Memory
-11.0MiB live, 142.2MiB allocated
Counts
36 → 2
Calls
Call 1
Inputs
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 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 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) 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) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.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)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.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 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 #s(approx (+ (* (/ (pow im 4) re) (/ -1/4 re)) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #s(literal 1 binary64)) im) im)) (neg.f64 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 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im #s(literal 0 binary64))) 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 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re))))
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
Outputs
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Calls

7 calls:

26.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
24.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
12.0ms
im
9.0ms
re
9.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
85.9%2re
83.6%1im
88.8%2(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
88.8%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
87.8%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
87.8%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
83.6%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes45.0ms (0.6%)

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

7 calls:

8.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
7.0ms
im
6.0ms
re
6.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))))
6.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
70.4%3im
70.4%3(*.f64 im im)
76.4%4re
75.8%3(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
75.8%3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
76.7%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))))
76.7%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes25.0ms (0.3%)

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

5 calls:

6.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))))
5.0ms
re
4.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
4.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
4.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
73.7%3re
62.6%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
62.6%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
63.6%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))))
63.6%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Compiler

Compiled 51 to 40 computations (21.6% saved)

regimes5.0ms (0.1%)

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

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
73.7%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes29.0ms (0.4%)

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

1 calls:

29.0ms
re
Results
AccuracySegmentsBranch
72.3%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes3.0ms (0%)

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

1 calls:

3.0ms
re
Results
AccuracySegmentsBranch
69.2%2re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes8.0ms (0.1%)

Memory
18.8MiB live, 18.8MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

7 calls:

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))
1.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
1.0ms
re
Results
AccuracySegmentsBranch
30.4%1(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
30.4%1(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
30.4%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))))
30.4%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
30.4%1(*.f64 im im)
30.4%1im
30.4%1re
Compiler

Compiled 55 to 45 computations (18.2% saved)

bsearch1.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
2.3643072768323203e-117
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch1.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.495671442469359e+70
2.730225027424218e+71
0.0ms
0.0
2.3643072768323203e-117
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch50.0ms (0.7%)

Memory
-0.3MiB live, 74.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
0.029180738011009368
0.6148025542797754
33.0ms
-8.125608818769117e+51
-7.414325193270208e+43
Samples
13.0ms24×2valid
11.0ms176×0valid
5.0ms20×3valid
4.0ms36×1valid
Compiler

Compiled 688 to 533 computations (22.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-hypot: 8.0ms (44.1% of total)
ival-mult: 4.0ms (22% of total)
ival-sqrt: 3.0ms (16.5% of total)
ival-add: 2.0ms (11% of total)
adjust: 1.0ms (5.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
0.029180738011009368
0.6148025542797754
1.0ms
-8.125608818769117e+51
-7.414325193270208e+43
Compiler

Compiled 646 to 512 computations (20.7% saved)

bsearch2.0ms (0%)

Memory
2.5MiB live, 2.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
0.029180738011009368
0.6148025542797754
1.0ms
-8.125608818769117e+51
-7.414325193270208e+43
Compiler

Compiled 646 to 512 computations (20.7% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.029180738011009368
0.6148025542797754
Compiler

Compiled 277 to 231 computations (16.6% saved)

simplify151.0ms (2.1%)

Memory
-8.7MiB live, 73.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
080401
199401
2117401
3136401
4153401
5164401
6175401
7207401
8334401
9410401
10477401
11611401
12815401
131085401
141374401
151669401
161962401
172447401
183380401
194770401
207100401
Stop Event
node limit
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 100000000000000004188152556421145795899143386664033828314342771180699648 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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal 5404319552844595/72057594037927936 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Outputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 100000000000000004188152556421145795899143386664033828314342771180699648 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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))))
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 100000000000000004188152556421145795899143386664033828314342771180699648 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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -3399999999999999844028425914337947829589102674575360 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))) (if (<=.f64 re #s(literal 5404319552844595/72057594037927936 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 (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal 5404319552844595/72057594037927936 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))

soundness761.0ms (10.5%)

Memory
6.1MiB live, 753.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039352
067267
1202267
21152267
08389267
05002884
116592707
259302687
084592523
07344512
124474217
083113991
01265
02065
16165
239865
3424965
0836738
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 974 to 403 computations (58.6% saved)

preprocess78.0ms (1.1%)

Memory
17.4MiB live, 138.3MiB allocated
Remove

(abs im)

Compiler

Compiled 1 006 to 286 computations (71.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...