math.sqrt on complex, real part

Time bar (total: 6.8s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze135.0ms (2%)

Memory
8.9MiB live, 157.0MiB 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.1s (31.2%)

Memory
29.7MiB live, 1 621.6MiB allocated
Samples
1.0s6 216×0valid
261.0ms453×3valid
254.0ms784×1valid
146.0ms803×2valid
Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-hypot: 625.0ms (44% of total)
ival-add: 394.0ms (27.7% of total)
ival-mult: 260.0ms (18.3% of total)
ival-sqrt: 87.0ms (6.1% of total)
adjust: 39.0ms (2.7% of total)
exact: 8.0ms (0.6% of total)
ival-true: 6.0ms (0.4% of total)
ival-assert: 3.0ms (0.2% of total)
Bogosity

explain188.0ms (2.8%)

Memory
-20.4MiB live, 371.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1250-1(-7.712405973499698e-178 2.513046463494942e-157)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
440-0-(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
240-1(-2.1372583238963183e+281 -1.1508561648379187e-15)(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-rescue1100
(+.f64 (*.f64 re re) (*.f64 im im))overflow110
(*.f64 re re)overflow66
(*.f64 im im)overflow64
+.f64(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation440
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue230
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 im im)underflow60
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow3
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow26
(*.f64 re re)underflow58
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow26
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue140
(+.f64 (*.f64 re re) (*.f64 im im))underflow14
(*.f64 re re)underflow58
(*.f64 im im)underflow60
Confusion
Predicted +Predicted -
+1561
-099
Precision
1.0
Recall
0.9936305732484076
Confusion?
Predicted +Predicted MaybePredicted -
+15601
-0099
Precision?
1.0
Recall?
0.9936305732484076
Freqs
test
numberfreq
0100
1121
235
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
34.0ms372×0valid
19.0ms52×2valid
12.0ms64×1valid
10.0ms24×3valid
Compiler

Compiled 169 to 40 computations (76.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 48.0ms
ival-hypot: 15.0ms (31.2% of total)
ival-mult: 15.0ms (31.2% of total)
ival-sqrt: 7.0ms (14.6% of total)
ival-add: 6.0ms (12.5% of total)
adjust: 4.0ms (8.3% of total)
exact: 1.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess32.0ms (0.5%)

Memory
15.1MiB live, 48.2MiB 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.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
41.9%
(*.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
5.1MiB live, 5.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
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

localize53.0ms (0.8%)

Memory
-12.3MiB live, 109.6MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
accuracy5.278230041053252
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy10.36276954224007
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy28.954685310880492
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
17.0ms186×0valid
11.0ms32×1valid
10.0ms26×2valid
6.0ms12×3valid
Compiler

Compiled 77 to 14 computations (81.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-hypot: 11.0ms (41.3% of total)
ival-mult: 7.0ms (26.3% of total)
ival-add: 4.0ms (15% of total)
adjust: 2.0ms (7.5% of total)
ival-sqrt: 2.0ms (7.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series22.0ms (0.3%)

Memory
-5.3MiB live, 31.5MiB allocated
Counts
6 → 113
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/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)))
(+ 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)))))))
(* 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))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (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))))))
(* 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)))))))
(* 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))))))
(* -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 (* (* 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/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 (/ (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))
(+ 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/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)))))))))
(+ (* 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)))))
(+ (* 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))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/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 (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ 2 (* 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))))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/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)))))))
(* -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)))))
(* -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)))))
Calls

6 calls:

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

simplify189.0ms (2.8%)

Memory
32.3MiB live, 142.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite201.0ms (3%)

Memory
-20.2MiB live, 273.3MiB 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
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Outputs
(*.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 (-.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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re)))))))
(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 (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))
(*.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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re))))) #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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re))))) (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 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal 2 binary64))) (neg.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re)))))))
(/.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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) 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 #s(literal 2 binary64) (hypot.f64 im re))))))
(/.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 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re))))) (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 #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 #s(literal 2 binary64) re))
(fma.f64 re #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #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 #s(literal 2 binary64) (hypot.f64 im re)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))

eval56.0ms (0.8%)

Memory
-5.2MiB live, 111.8MiB allocated
Compiler

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

prune15.0ms (0.2%)

Memory
3.2MiB live, 40.7MiB allocated
Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New38511396
Fresh000
Picked101
Done000
Total38611397
Accuracy
87.5%
Counts
397 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
74.8%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
75.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
73.2%
(*.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))))
41.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
4.7%
(*.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))))
50.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
48.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
27.9%
(*.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))))
48.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
27.9%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 396 to 296 computations (25.3% saved)

simplify43.0ms (0.6%)

Memory
2.1MiB live, 41.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
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-diff4
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
cost-diff0
(/.f64 (*.f64 (neg.f64 im) im) re)
cost-diff0
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
cost-diff0
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
cost-diff0
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
cost-diff0
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
cost-diff0
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im 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
037265
061213
187213
2104213
3137213
4157213
5176213
6219213
7266213
8318213
9457213
10867213
111192213
121312213
131390213
141413213
01413213
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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
#s(literal 2 binary64)
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
(+.f64 im re)
im
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))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
#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
Outputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(+.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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
(*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
(+.f64 im re)
(+.f64 re im)
im
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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) 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 re im) 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 re im) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(+.f64 (hypot.f64 re im) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 re im)
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im

localize86.0ms (1.3%)

Memory
-0.6MiB live, 114.3MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
accuracy0.00390625
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
accuracy0.0078125
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
accuracy13.933088017829958
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.0
(neg.f64 im)
accuracy0.0078125
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
accuracy3.512667709389927
(/.f64 (*.f64 (neg.f64 im) im) re)
accuracy31.95102176807629
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
accuracy0.0
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
accuracy0.0078125
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
accuracy14.211718897200488
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
accuracy0.0
(sqrt.f64 re)
accuracy14.613760761612788
#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.00390625
(+.f64 (hypot.f64 im re) re)
accuracy0.0078125
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
Samples
38.0ms126×0invalid
29.0ms130×0valid
Compiler

Compiled 266 to 24 computations (91% saved)

Precisions
Click to see histograms. Total time spent on operations: 50.0ms
ival-div: 16.0ms (32.2% of total)
ival-mult: 11.0ms (22.1% of total)
ival-hypot: 8.0ms (16.1% of total)
ival-sqrt: 5.0ms (10.1% of total)
ival-neg: 5.0ms (10.1% of total)
ival-add: 4.0ms (8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series12.0ms (0.2%)

Memory
24.6MiB live, 24.6MiB allocated
Counts
20 → 110
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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im 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))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(sqrt.f64 (fma.f64 re 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))
(neg.f64 im)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/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 (/ (pow im 2) re))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (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)))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (* (* 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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ (* 1/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)))))
(+ 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 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 (* 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 (* -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
2.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)) (/ (* (neg im) im) re) (sqrt (+ (* 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)) (neg im) (+ (sqrt (+ (* re re) (* im im))) re))
2.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)) (/ (* (neg im) im) re) (sqrt (+ (* 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)) (neg im) (+ (sqrt (+ (* re re) (* im im))) re))
2.0ms
re
@0
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt 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)) (/ (* (neg im) im) re) (sqrt (+ (* 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)) (neg im) (+ (sqrt (+ (* re re) (* im im))) re))
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)) (/ (* (neg im) im) re) (sqrt (+ (* 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)) (neg im) (+ (sqrt (+ (* re re) (* im im))) re))
2.0ms
im
@inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt 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)) (/ (* (neg im) im) re) (sqrt (+ (* 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)) (neg im) (+ (sqrt (+ (* re re) (* im im))) re))

simplify202.0ms (3%)

Memory
15.6MiB live, 207.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04982842
116462670
259012652
081962491
Stop Event
iter limit
node limit
Counts
110 → 108
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 (/ (pow im 2) re))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (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)))))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (* (* 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 (* (sqrt re) (pow (sqrt -1) 2)))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ (* 1/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)))))
(+ 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 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 (* 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 (* -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))))
(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 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))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/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/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 (+.f64 re im) #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 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 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(+ 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/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 (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 (*.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 (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 (*.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 (/.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 (/.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)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/2 (* (* 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 (/ (+ (* -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 (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 #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 (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 (* (sqrt re) (pow (sqrt -1) 2)))
(sqrt.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 (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 (*.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 (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)))
(+ (* 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))
(+ 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 im)
(neg.f64 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 (* 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)
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/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 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (-.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))))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/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 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (-.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))))) (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 (fma.f64 #s(literal 2 binary64) re (*.f64 (/.f64 (neg.f64 re) im) re)) 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)))))
(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 (*.f64 re re) #s(literal 1/2 binary64))) im)) 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))

rewrite204.0ms (3%)

Memory
-10.2MiB live, 229.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037230
061178
1165178
2749178
37966178
08666178
Stop Event
iter limit
node limit
iter limit
Counts
20 → 459
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) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im 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))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(sqrt.f64 (fma.f64 re 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))
(neg.f64 im)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) 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 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #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 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #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 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #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 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 #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)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #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)) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 2 binary64) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 (neg.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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) (*.f64 re re) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.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 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) 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 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) 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 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (+.f64 (hypot.f64 re im) re) (/.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (hypot.f64 re im) re) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #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 re im) #s(literal 9 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 1 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 1 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 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 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 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 re (/.f64 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 re (/.f64 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 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 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 re (/.f64 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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 (-.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 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)))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.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 #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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 (fma.f64 (neg.f64 im) im (*.f64 re re)))) 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 (neg.f64 im) im (*.f64 re re)) #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 (neg.f64 im) im (*.f64 re re)) #s(literal -1 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 (fma.f64 (neg.f64 re) re (*.f64 im im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 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 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) 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 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (hypot.f64 re im) (/.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 re (/.f64 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 re (/.f64 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 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #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 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))))
(*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (*.f64 (/.f64 im re) #s(literal -1 binary64)) im)
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (*.f64 im im))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (/.f64 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) im)
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (*.f64 im im)) #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 im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) #s(literal 1 binary64))
(*.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 (/.f64 (*.f64 im im) #s(literal -1 binary64)) re)
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 im re)) (*.f64 im im))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) (/.f64 im re)) im)
(/.f64 (*.f64 (/.f64 im re) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 im im))
(/.f64 (*.f64 (/.f64 im re) (*.f64 (neg.f64 im) im)) im)
(/.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)) (/.f64 re im))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (/.f64 re im))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 re im) (*.f64 im im)))
(/.f64 (*.f64 (neg.f64 im) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (neg.f64 re) (*.f64 im im)))
(/.f64 (*.f64 im (*.f64 (neg.f64 im) im)) (*.f64 re im))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (*.f64 im im) (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)) (*.f64 (*.f64 im im) (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 re im) im))
(/.f64 #s(literal -1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (*.f64 im im)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 re) im))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 im (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (neg.f64 im) (/.f64 re im))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 (neg.f64 im) im))))
(neg.f64 (*.f64 (/.f64 im re) im))
(fma.f64 (/.f64 im re) #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(fma.f64 #s(literal 0 binary64) (/.f64 im re) (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 re)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) re) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(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 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #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 (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) #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 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #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))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (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 re im) #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))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 (hypot.f64 re im) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 re im) #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 (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))))
(/.f64 (neg.f64 (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 re im) #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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #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 (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)))) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 re) re (*.f64 im im))) (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 re im) #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 (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fabs.f64 (hypot.f64 re im))
(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)) (neg.f64 im))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 (neg.f64 im) (exp.f64 (log.f64 re)))
(hypot.f64 (neg.f64 im) re)
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re (neg.f64 im))
(hypot.f64 re im)
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im re)
(exp.f64 (log.f64 (hypot.f64 re im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) 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 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #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 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #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 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #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 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 #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)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #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)) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 2 binary64) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 (neg.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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) (*.f64 re re) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.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 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #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 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 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) 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 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #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 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) im))
(*.f64 (neg.f64 im) (/.f64 im im))
(*.f64 im (/.f64 (neg.f64 im) im))
(*.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)))) (*.f64 (neg.f64 im) im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 im im))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) (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)
(fma.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) im #s(literal 0 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) im) #s(literal 0 binary64))
(fma.f64 (neg.f64 im) (/.f64 im im) #s(literal 0 binary64))
(fma.f64 im (/.f64 (neg.f64 im) im) #s(literal 0 binary64))
(fma.f64 im #s(literal -1 binary64) #s(literal 0 binary64))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im im)))
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(+.f64 (neg.f64 im) #s(literal 0 binary64))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) 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 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (+.f64 (hypot.f64 re im) re) (/.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (hypot.f64 re im) re) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #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 re im) #s(literal 9 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 1 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 1 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 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 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 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 re (/.f64 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 re (/.f64 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 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 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 re (/.f64 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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 (-.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (+.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 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)))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.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 #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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (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 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 (fma.f64 (neg.f64 im) im (*.f64 re re)))) 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 (neg.f64 im) im (*.f64 re re)) #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 (neg.f64 im) im (*.f64 re re)) #s(literal -1 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 (fma.f64 (neg.f64 re) re (*.f64 im im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #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 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 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 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) 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 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (hypot.f64 re im) (/.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(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 re (/.f64 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 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))

eval53.0ms (0.8%)

Memory
4.1MiB live, 111.6MiB allocated
Compiler

Compiled 11 912 to 2 151 computations (81.9% saved)

prune17.0ms (0.3%)

Memory
-5.8MiB live, 42.0MiB allocated
Pruning

12 alts after pruning (7 fresh and 5 done)

PrunedKeptTotal
New4106416
Fresh516
Picked055
Done000
Total41512427
Accuracy
91.8%
Counts
427 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.6%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
75.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
27.9%
(*.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))
48.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
41.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
4.7%
(*.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))))
50.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
27.9%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 389 to 286 computations (26.5% saved)

simplify64.0ms (0.9%)

Memory
22.0MiB live, 58.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
041362
063362
1103362
2138362
3173362
4210362
5242362
6324362
7419362
8472362
9870362
101644362
112015362
122209362
132275362
142297362
152297362
02297272
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
(+.f64 re im)
re
im
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#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)
#s(literal 2 binary64)
im
#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))))
#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)) (*.f64 (/.f64 (neg.f64 im) re) im))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 (neg.f64 im) re)
(neg.f64 im)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(neg.f64 im)
im
(/.f64 re im)
re
Outputs
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #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 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
(+.f64 re im)
(+.f64 im re)
re
im
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#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))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.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)))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 (neg.f64 im) re)
(neg.f64 im)
im
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(/.f64 (neg.f64 im) (/.f64 re im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(neg.f64 im)
im
(/.f64 re im)
re

localize150.0ms (2.2%)

Memory
-29.6MiB live, 289.0MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(neg.f64 im)
accuracy0.1328125
(/.f64 (neg.f64 im) (/.f64 re im))
accuracy5.278230041053252
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))
accuracy45.04589111753203
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))
accuracy0.0
(neg.f64 im)
accuracy0.12109375
(*.f64 (/.f64 (neg.f64 im) re) im)
accuracy5.278230041053252
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
accuracy45.04589111753203
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
accuracy5.278230041053252
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
accuracy10.36276954224007
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
accuracy45.270259005547764
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 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)
accuracy5.278230041053252
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy33.39201551030784
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.43587875976844204
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
accuracy5.282336610697639
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
accuracy31.359095032923943
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
Samples
57.0ms26×2valid
47.0ms186×0valid
14.0ms32×1valid
9.0ms12×3valid
Compiler

Compiled 279 to 28 computations (90% saved)

Precisions
Click to see histograms. Total time spent on operations: 68.0ms
ival-hypot: 30.0ms (44.2% of total)
ival-mult: 14.0ms (20.6% of total)
ival-sqrt: 8.0ms (11.8% of total)
ival-div: 5.0ms (7.4% of total)
ival-add: 5.0ms (7.4% of total)
adjust: 3.0ms (4.4% of total)
ival-neg: 2.0ms (2.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
-0.4MiB live, 38.4MiB allocated
Counts
23 → 152
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(sqrt.f64 #s(literal 2 binary64))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 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))))))))
(* 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
(+ 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 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))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (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)))))))
(* 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))))))
(* 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)))))))
(* (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)))))))
(* 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)))))
(* 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/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))
(* (* 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 (* 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/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)))))))))
(+ (* 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/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 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/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 (/ 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/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)))))))
(* -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/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 (/ 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 (* (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/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Calls

6 calls:

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

simplify163.0ms (2.4%)

Memory
28.2MiB live, 173.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06984372
123334087
080383869
Stop Event
iter limit
node limit
Counts
152 → 150
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))))))))
(* 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
(+ 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 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))
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (* (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)))))))
(* 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))))))
(* 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)))))))
(* (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)))))))
(* 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)))))
(* 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/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))
(* (* 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 (* 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/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)))))))))
(+ (* 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/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 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/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 (/ 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/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)))))))
(* -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/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 (/ 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 (* (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/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 re #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/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)))
(* 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
(+ 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)
(* (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 #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)
(+ 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 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(* 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)
(* 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 (/.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)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (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/16 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 (*.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)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (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 (/.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)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 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)
(* (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)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/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/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 -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.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/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/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))) (*.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 (/ (+ (* -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 (sqrt.f64 #s(literal 1/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 (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/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 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(* (* 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 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.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 #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 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(+ (* 1/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/8 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (sqrt 2))))
(fma.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))) (*.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/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 #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 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.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)))) (*.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))))
(+ (* 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/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))
(+ 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 im)
(neg.f64 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/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 (/ 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/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 (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 (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)))) (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 (*.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))))) (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 (-.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))))) (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 (/ 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 (* (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 (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))))) (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) (*.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)))))) (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 (-.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))))) (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 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 (neg.f64 re) 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 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 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 (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))

rewrite148.0ms (2.2%)

Memory
5.2MiB live, 204.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041332
063332
1195332
21006331
08590241
Stop Event
iter limit
node limit
iter limit
Counts
23 → 345
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))
(/.f64 (neg.f64 im) (/.f64 re im))
(sqrt.f64 #s(literal 2 binary64))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 im)
Outputs
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) #s(literal 1/2 binary64)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) 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)) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) 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)) (*.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)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal -2 binary64) (neg.f64 im))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
(neg.f64 (*.f64 #s(literal 2 binary64) (neg.f64 im)))
(neg.f64 (*.f64 (neg.f64 im) #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 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))) (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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (sqrt.f64 #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)) (*.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 1/2 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 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 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #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 (*.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 #s(literal 2 binary64)) (*.f64 #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 #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 (*.f64 (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (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 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #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 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #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 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (*.f64 (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)) #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))) (*.f64 (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)) #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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #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 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 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 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 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 #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 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 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(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 (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(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (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 (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)))
(*.f64 (+.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) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (*.f64 re re)) (-.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 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.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)))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 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))) (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 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) 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 (-.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 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(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 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 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 (/.f64 (neg.f64 im) re) #s(literal 1 binary64)) im)
(*.f64 (pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (/.f64 (pow.f64 im #s(literal -1 binary64)) im) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) 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 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im re) (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1 binary64))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 im re))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (pow.f64 im #s(literal -1 binary64)) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (pow.f64 im #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 im) (*.f64 (neg.f64 im) im)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 (neg.f64 im) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (neg.f64 re) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 im (*.f64 (neg.f64 im) im)) (*.f64 im re))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 (neg.f64 re) im) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 re im) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (*.f64 im (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (/.f64 (neg.f64 re) im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (/.f64 re im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 re im) (/.f64 im re))) (/.f64 (/.f64 re im) im))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 (/.f64 re im) im)) (/.f64 re im)) (*.f64 (/.f64 re im) (/.f64 (/.f64 re im) im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (*.f64 (/.f64 re im) (neg.f64 im))) (*.f64 (/.f64 re im) (/.f64 (neg.f64 re) im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 re im)) (*.f64 (/.f64 re im) im)) (*.f64 (/.f64 re im) (/.f64 re im)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 re (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (fma.f64 im im #s(literal 0 binary64)) re))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal -1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (pow.f64 im #s(literal -1 binary64)) im))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 im (pow.f64 im #s(literal -1 binary64))))
(/.f64 (/.f64 (neg.f64 im) re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 (*.f64 im im) (*.f64 im (/.f64 (neg.f64 re) im)))
(/.f64 (*.f64 im im) (*.f64 #s(literal 1 binary64) (neg.f64 re)))
(/.f64 (*.f64 im im) (*.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re)))
(neg.f64 (*.f64 (/.f64 im re) im))
(fma.f64 (/.f64 im re) #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (neg.f64 re) im) im)) #s(literal -1 binary64)))
(+.f64 (*.f64 (/.f64 im re) #s(literal 0 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 (/.f64 (neg.f64 im) re) #s(literal 1 binary64)) im)
(*.f64 (pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (/.f64 (pow.f64 im #s(literal -1 binary64)) im) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) 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 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im re) (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1 binary64))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 im re))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (pow.f64 im #s(literal -1 binary64)) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (pow.f64 im #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 im) (*.f64 (neg.f64 im) im)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 (neg.f64 im) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (neg.f64 re) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 im (*.f64 (neg.f64 im) im)) (*.f64 im re))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 (neg.f64 re) im) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 re im) (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (*.f64 im (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (/.f64 (neg.f64 re) im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (/.f64 re im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 re im) (/.f64 im re))) (/.f64 (/.f64 re im) im))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 (/.f64 re im) im)) (/.f64 re im)) (*.f64 (/.f64 re im) (/.f64 (/.f64 re im) im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (*.f64 (/.f64 re im) (neg.f64 im))) (*.f64 (/.f64 re im) (/.f64 (neg.f64 re) im)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (/.f64 re im)) (*.f64 (/.f64 re im) im)) (*.f64 (/.f64 re im) (/.f64 re im)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 re (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (fma.f64 im im #s(literal 0 binary64)) re))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal -1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (pow.f64 im #s(literal -1 binary64)) im))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 im (pow.f64 im #s(literal -1 binary64))))
(/.f64 (/.f64 (neg.f64 im) re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 (*.f64 im im) (*.f64 im (/.f64 (neg.f64 re) im)))
(/.f64 (*.f64 im im) (*.f64 #s(literal 1 binary64) (neg.f64 re)))
(/.f64 (*.f64 im im) (*.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re)))
(neg.f64 (*.f64 (/.f64 im re) im))
(fma.f64 (/.f64 im re) #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (neg.f64 re) im) im)) #s(literal -1 binary64)))
(+.f64 (*.f64 (/.f64 im re) #s(literal 0 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) 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)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 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 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 #s(literal 1 binary64) (neg.f64 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) #s(literal 0 binary64))))
(/.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 (neg.f64 im) #s(literal 1 binary64))
(/.f64 (*.f64 im im) (neg.f64 im))
(/.f64 im #s(literal -1 binary64))
(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 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))

eval92.0ms (1.4%)

Memory
-26.9MiB live, 142.8MiB allocated
Compiler

Compiled 15 480 to 2 203 computations (85.8% saved)

prune19.0ms (0.3%)

Memory
-6.2MiB live, 38.7MiB allocated
Pruning

17 alts after pruning (7 fresh and 10 done)

PrunedKeptTotal
New4285433
Fresh022
Picked055
Done055
Total42817445
Accuracy
91.8%
Counts
445 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.1%
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
50.6%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
27.6%
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
75.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
27.9%
(*.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))
48.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
45.1%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
13.0%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)))
41.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
4.7%
(*.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))))
50.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
27.9%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 552 to 380 computations (31.2% saved)

simplify107.0ms (1.6%)

Memory
36.0MiB live, 146.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
049505
077507
1119507
2172501
3233501
4295501
5336497
6422497
7989497
82811497
94352497
107338497
08057398
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 re)
re
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(/.f64 im re)
im
re
(/.f64 #s(literal -1 binary64) im)
#s(literal -1 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)
(*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)))
#s(literal 1/2 binary64)
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.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/4 binary64)
Outputs
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 #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 (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
#s(approx (* 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)
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re))))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re))) #s(literal 1/2 binary64))
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re)))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re))
(sqrt.f64 re)
re
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(/.f64 im re)
im
re
(/.f64 #s(literal -1 binary64) im)
#s(literal -1 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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (*.f64 (/.f64 im re) im)))) #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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (*.f64 (/.f64 im re) im))))
#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 (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (*.f64 (/.f64 im re) im)))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(fma.f64 #s(literal 4 binary64) re (*.f64 (/.f64 im re) im))
(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)
(*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.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/4 binary64)

localize156.0ms (2.3%)

Memory
-18.3MiB live, 183.9MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.01171875
(*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
accuracy0.046875
(*.f64 (/.f64 (neg.f64 im) re) im)
accuracy14.61700158350652
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
accuracy31.95102176807629
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
accuracy0.0078125
(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)))
accuracy0.04296875
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
accuracy0.9653335106022352
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
accuracy14.57531918987632
#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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
accuracy0.0078125
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))
accuracy0.0703125
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
accuracy31.95102176807629
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.2109375
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.256855029305326
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
accuracy14.613464136966373
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
accuracy0.00390625
(+.f64 (/.f64 re im) #s(literal 2 binary64))
accuracy0.0078125
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
accuracy0.03125
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy16.199016907125344
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
Samples
73.0ms130×0valid
55.0ms126×0invalid
Compiler

Compiled 353 to 42 computations (88.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 95.0ms
ival-mult: 56.0ms (58.8% of total)
ival-sqrt: 10.0ms (10.5% of total)
ival-div: 9.0ms (9.5% of total)
ival-hypot: 8.0ms (8.4% of total)
ival-add: 6.0ms (6.3% of total)
ival-pow: 5.0ms (5.3% of total)
exact: 1.0ms (1.1% of total)
ival-neg: 1.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series33.0ms (0.5%)

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

6 calls:

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

simplify255.0ms (3.8%)

Memory
-17.4MiB live, 232.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09186237
130835866
274125850
081495589
Stop Event
iter limit
node limit
Counts
198 → 198
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))))))
(* 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)))))))))
(* (sqrt re) (sqrt 2))
(* -1 (/ (pow im 2) re))
(/ (pow im 2) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) re)
(* 1/2 (* (pow 4 1/4) (sqrt im)))
(+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 im)) re))) (* 1/2 (* (pow 4 1/4) (sqrt im))))
(+ (* 1/2 (* (pow 4 1/4) (sqrt im))) (* re (+ (* 1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/4 (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(+ (* 1/2 (* (pow 4 1/4) (sqrt im))) (* re (+ (* 1/4 (* (pow 4 1/4) (sqrt (/ 1 im)))) (* re (+ (* -1/32 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) re))) (* 1/16 (* (pow 4 1/4) (sqrt (/ 1 (pow im 3))))))))))
(* (pow 4 1/4) (sqrt im))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) re))) (* (pow 4 1/4) (sqrt im)))
(+ (* re (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))))) (* (pow 4 1/4) (sqrt im)))
(+ (* re (+ (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))) (* re (+ (* -1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) re))) (* 1/8 (* (pow 4 1/4) (sqrt (/ 1 (pow im 3))))))))) (* (pow 4 1/4) (sqrt im)))
(* 4 (pow im 2))
(+ (* 4 (pow im 2)) (* 8 (* im re)))
(+ (* 4 (pow im 2)) (* re (+ (* 8 im) (* 8 re))))
(+ (* 4 (pow im 2)) (* re (+ (* 8 im) (* re (+ 8 (* 4 (/ re im)))))))
2
(+ 2 (/ re im))
(/ (pow im 2) (pow re 2))
(/ (+ (* 4 (pow re 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))))))
(/ (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)))))))
(* 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))))))
(* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2))))
(* re (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))
(* re (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))))
(* re (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* -1/64 (* (pow 4 1/4) (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))))
(* (pow 4 1/4) (* (sqrt re) (sqrt 2)))
(* re (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))
(* re (+ (* -1/16 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))
(* re (+ (* -1/16 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))))
(* 16 (pow re 2))
(* (pow re 2) (+ 16 (* 8 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 16 (+ (* 4 (/ (+ (* -1/2 (pow im 4)) (* 1/4 (pow im 4))) (pow re 4))) (* 8 (/ (pow im 2) (pow re 2))))))
(* (pow re 2) (+ 16 (+ (* 4 (/ (+ (* -1/2 (pow im 4)) (* 1/4 (pow im 4))) (pow re 4))) (+ (* 4 (/ (+ (* -1/8 (pow im 6)) (* 1/4 (pow im 6))) (pow re 6))) (* 8 (/ (pow im 2) (pow re 2)))))))
(/ re im)
(* re (+ (/ 1 im) (* 2 (/ 1 re))))
4
(+ 4 (/ (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 (/ (+ (* -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))
(* (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 (* (sqrt re) (* (pow (sqrt -1) 2) (sqrt 2))))
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4)))
(* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(+ (* 1/32 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(+ (* -1 (/ (+ (* -1/32 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (* 1/64 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(+ (* -1 (/ (+ (* -1/32 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (+ (* 1/1024 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3)))))) (* 1/64 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))))) (pow re 3))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* 1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (* 1/32 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (+ (* 1/512 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3)))))) (* 1/32 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))))) (pow re 3))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(/ (pow im 4) (pow re 2))
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (pow im 4)) (pow re 2))
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (+ (* 4 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 4))) (pow im 4))) (pow re 2))
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (+ (* 4 (/ (+ (* -1/2 (* (pow im 2) (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))))) (* -1/64 (pow im 10))) (pow re 6))) (+ (* 4 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 4))) (pow im 4)))) (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))))
(/ (+ (* 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)))))))))
(+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))) (* (pow im 2) (+ (* -1/4 (* (pow 4 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 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))))))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))) (* (pow im 2) (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))) (* (pow im 2) (+ (* -1/4 (* (pow 4 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 4 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 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (* (pow 4 1/4) (* (sqrt re) (sqrt 2))))
(+ (* (pow 4 1/4) (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* -1/2 (* (pow 4 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/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))))))
(+ (* (pow 4 1/4) (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))) (* (pow im 2) (+ (* -1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2))))) (* 1/2 (* (pow 4 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))))))))))
(+ (* 8 (pow im 2)) (* 16 (pow re 2)))
(+ (* 16 (pow re 2)) (* (pow im 2) (+ 8 (* -1 (/ (pow im 2) (pow re 2))))))
(+ (* 16 (pow re 2)) (* (pow im 2) (+ 8 (* (pow im 2) (- (* 1/2 (/ (pow im 2) (pow re 4))) (/ 1 (pow re 2)))))))
(/ (+ 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/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))))))
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im))))))
(* im (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(* im (+ (* -1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im))))))))
(* im (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im)))))
(* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im))))))
(* im (+ (* -1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(* (pow im 2) (+ 4 (* 8 (/ re im))))
(* (pow im 2) (+ 4 (+ (* 8 (/ re im)) (* 8 (/ (pow re 2) (pow im 2))))))
(* (pow im 2) (+ 4 (+ (* 4 (/ (pow re 3) (pow im 3))) (+ (* 8 (/ re im)) (* 8 (/ (pow re 2) (pow im 2)))))))
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 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 (- (* -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/2 (* (pow 4 1/4) (* (sqrt im) (sqrt -1))))
(* -1 (* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1))))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1))))) (* 1/8 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1)))))) (pow im 3))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))))
(* -1 (* (pow 4 1/4) (* (sqrt im) (sqrt -1))))
(* -1 (* im (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1))))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1))))) (* 1/4 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1)))))) (pow im 3))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* (pow im 2) (+ 4 (* -8 (/ re im))))
(* (pow im 2) (+ 4 (* -1 (/ (+ (* -8 (/ (pow re 2) im)) (* 8 re)) im))))
(* (pow im 2) (+ 4 (* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow re 3) im)) (* 8 (pow re 2))) im)) (* 8 re)) im))))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (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 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64))) re (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/32 binary64))) re)) re (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 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)))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 #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)) 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))
(* 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 (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/16 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.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)))
(+ (* 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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) re (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) re (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) (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))
(+ (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) (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)))))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) re (sqrt.f64 im))
(* (sqrt re) (sqrt 2))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 im im) (neg.f64 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)
(* 1/2 (* (pow 4 1/4) (sqrt im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 im))
(+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 im)) re))) (* 1/2 (* (pow 4 1/4) (sqrt im))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (pow 4 1/4) (sqrt im))) (* re (+ (* 1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/4 (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (pow 4 1/4) (sqrt im))) (* re (+ (* 1/4 (* (pow 4 1/4) (sqrt (/ 1 im)))) (* re (+ (* -1/32 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) re))) (* 1/16 (* (pow 4 1/4) (sqrt (/ 1 (pow im 3))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) re) (*.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 im)))
(* (pow 4 1/4) (sqrt im))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 im))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) re))) (* (pow 4 1/4) (sqrt im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) re) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))))) (* (pow 4 1/4) (sqrt im)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))) (* re (+ (* -1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) re))) (* 1/8 (* (pow 4 1/4) (sqrt (/ 1 (pow im 3))))))))) (* (pow 4 1/4) (sqrt im)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) re) (*.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 im)))
(* 4 (pow im 2))
(*.f64 #s(literal 4 binary64) (*.f64 im im))
(+ (* 4 (pow im 2)) (* 8 (* im re)))
(fma.f64 (*.f64 #s(literal 8 binary64) im) re (*.f64 #s(literal 4 binary64) (*.f64 im im)))
(+ (* 4 (pow im 2)) (* re (+ (* 8 im) (* 8 re))))
(fma.f64 (*.f64 #s(literal 8 binary64) (+.f64 re im)) re (*.f64 #s(literal 4 binary64) (*.f64 im im)))
(+ (* 4 (pow im 2)) (* re (+ (* 8 im) (* re (+ 8 (* 4 (/ re im)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 4 binary64) (/.f64 re im) #s(literal 8 binary64)) re (*.f64 #s(literal 8 binary64) im)) re (*.f64 #s(literal 4 binary64) (*.f64 im im)))
2
#s(literal 2 binary64)
(+ 2 (/ re im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(/ (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)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(*.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal 1/2 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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 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 (*.f64 #s(literal -1/32 binary64) (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 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 4 binary64))))) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re)
(/ (pow re 2) im)
(*.f64 (/.f64 re im) re)
(* (pow re 2) (+ (/ 1 im) (* 2 (/ 1 re))))
(*.f64 (+.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re))
(* (pow re 2) (+ (* 2 (/ im (pow re 2))) (+ (/ 1 im) (* 2 (/ 1 re)))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 #s(literal 2 binary64) re) (+.f64 (/.f64 #s(literal 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 re)) (sqrt.f64 #s(literal 2 binary64)))
(* re (+ (* 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/8 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/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 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/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 #s(literal -1/128 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64)))) re)
(* 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 #s(literal -1/64 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #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)
(* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(* re (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))))) re)
(* re (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)))))) re)
(* re (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* -1/64 (* (pow 4 1/4) (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))))))) re)
(* (pow 4 1/4) (* (sqrt re) (sqrt 2)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(* re (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))) re)
(* re (+ (* -1/16 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))))) re)
(* re (+ (* -1/16 (* (pow 4 1/4) (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9)))))) (+ (* -1/32 (* (pow 4 1/4) (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (sqrt (/ 1 re)) (sqrt 2)))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) #s(literal 2 binary64)) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))))) re)
(* 16 (pow re 2))
(*.f64 #s(literal 16 binary64) (*.f64 re re))
(* (pow re 2) (+ 16 (* 8 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 8 binary64) #s(literal 16 binary64)) (*.f64 re re))
(* (pow re 2) (+ 16 (+ (* 4 (/ (+ (* -1/2 (pow im 4)) (* 1/4 (pow im 4))) (pow re 4))) (* 8 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 4 binary64)))) #s(literal 4 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 8 binary64) #s(literal 16 binary64))) (*.f64 re re))
(* (pow re 2) (+ 16 (+ (* 4 (/ (+ (* -1/2 (pow im 4)) (* 1/4 (pow im 4))) (pow re 4))) (+ (* 4 (/ (+ (* -1/8 (pow im 6)) (* 1/4 (pow im 6))) (pow re 6))) (* 8 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 #s(literal 4 binary64) (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 4 binary64))))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 8 binary64) #s(literal 16 binary64))) (*.f64 re re))
(/ re im)
(/.f64 re im)
(* re (+ (/ 1 im) (* 2 (/ 1 re))))
(*.f64 (+.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 1 binary64) im)) 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 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.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) (*.f64 (*.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 (*.f64 #s(literal 1/32 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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 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)))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.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 #s(literal -1/32 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)))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal 1/64 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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))))) (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)))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.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 #s(literal -1/32 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)))) (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 #s(literal 1/64 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))))))) (pow.f64 re #s(literal 3 binary64))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.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/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) (/.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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.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/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 (*.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 #s(literal 1/32 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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (/.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))) (sqrt.f64 re)) #s(literal -1/16 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 (*.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 #s(literal -1/16 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)))) (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 #s(literal 1/32 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))))))) (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))
(* (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 #s(literal 1/2 binary64) (*.f64 (*.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) (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -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)))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.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 #s(literal 1/64 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/32 binary64))) (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)))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.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 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 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 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/64 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (pow.f64 re #s(literal 3 binary64))))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) 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))))
(fma.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) 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))))
(fma.f64 (*.f64 (*.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 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/16 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 (*.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 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 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 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (* (sqrt re) (* (pow (sqrt -1) 2) (sqrt 2))))
(*.f64 (neg.f64 (*.f64 (sqrt.f64 re) #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -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)))
(* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.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 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1 (/ (+ (* -1/32 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (* 1/64 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.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 #s(literal 1/64 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (+ (* 1/1024 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3)))))) (* 1/64 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))))) (pow re 3))) (* 1/2 (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.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 #s(literal 1/1024 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64)) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))) (pow.f64 re #s(literal 3 binary64))))
(* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1 (/ (+ (* -1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (* 1/32 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (*.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 #s(literal 1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (pow 4 1/4) (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re)))) (+ (* 1/512 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3)))))) (* 1/32 (* (pow 4 1/4) (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))))) (pow re 3))) (* (pow 4 1/4) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (*.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 #s(literal 1/512 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64)) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (fma.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(/ (pow im 4) (pow re 2))
(/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re)
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (pow im 4)) (pow re 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) re) (/.f64 #s(literal -1/2 binary64) re) (pow.f64 im #s(literal 4 binary64))) (*.f64 re re))
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (+ (* 4 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 4))) (pow im 4))) (pow re 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) re) (/.f64 #s(literal -1/2 binary64) re) (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 4 binary64)))) #s(literal 4 binary64) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re re))
(/ (+ (* -1/2 (/ (pow im 6) (pow re 2))) (+ (* 4 (/ (+ (* -1/2 (* (pow im 2) (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))))) (* -1/64 (pow im 10))) (pow re 6))) (+ (* 4 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 4))) (pow im 4)))) (pow re 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) re) (/.f64 #s(literal -1/2 binary64) re) (fma.f64 #s(literal 4 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (*.f64 (pow.f64 im #s(literal 10 binary64)) #s(literal -1/64 binary64))) (pow.f64 re #s(literal 6 binary64))) (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 4 binary64))))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re 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)))) (*.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal 1/2 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 #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)))) (*.f64 im im))) (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 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal 1/2 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 #s(literal 1/4 binary64) (*.f64 (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))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.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))) #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) (*.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(+ (* 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 (+.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))) (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 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (+.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 (*.f64 #s(literal 1/2 binary64) (*.f64 (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))) (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))
(/ (+ (* 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 re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.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 #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 #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)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64)))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.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 re)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 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 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (/.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 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (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 (/.f64 im (sqrt.f64 #s(literal 2 binary64)))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.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 re)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(fma.f64 (sqrt.f64 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 3 binary64))))) (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 #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)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64)))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.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 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (/.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 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (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 (/.f64 im (sqrt.f64 #s(literal 2 binary64)))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.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))))
(+ (* 1/8 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))))
(fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))) (* (pow im 2) (+ (* -1/4 (* (pow 4 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 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 #s(literal 4 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)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #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 im im) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/2 (* (pow 4 1/4) (* (sqrt re) (sqrt 2)))) (* (pow im 2) (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))) (* (pow im 2) (+ (* -1/4 (* (pow 4 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 4 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 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (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 (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 #s(literal 4 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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 im im) (*.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #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 im im) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/4 (* (pow 4 1/4) (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (* (pow 4 1/4) (* (sqrt re) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow 4 1/4) (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* -1/2 (* (pow 4 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/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 #s(literal 4 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)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #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 im im) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* (pow 4 1/4) (* (sqrt re) (sqrt 2))) (* (pow im 2) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2))))) (* (pow im 2) (+ (* -1/2 (* (pow 4 1/4) (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2))))) (* 1/2 (* (pow 4 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 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (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 (/.f64 im (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 #s(literal 4 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)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 im im) (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #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 im im) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 8 (pow im 2)) (* 16 (pow re 2)))
(fma.f64 #s(literal 16 binary64) (*.f64 re re) (*.f64 #s(literal 8 binary64) (*.f64 im im)))
(+ (* 16 (pow re 2)) (* (pow im 2) (+ 8 (* -1 (/ (pow im 2) (pow re 2))))))
(fma.f64 (-.f64 #s(literal 8 binary64) (/.f64 (/.f64 (*.f64 im im) re) re)) (*.f64 im im) (*.f64 #s(literal 16 binary64) (*.f64 re re)))
(+ (* 16 (pow re 2)) (* (pow im 2) (+ 8 (* (pow im 2) (- (* 1/2 (/ (pow im 2) (pow re 4))) (/ 1 (pow re 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/2 binary64) (/.f64 #s(literal -1 binary64) (*.f64 re re))) (*.f64 im im) #s(literal 8 binary64)) (*.f64 im im) (*.f64 #s(literal 16 binary64) (*.f64 re 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 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/4 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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/4 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 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/4 binary64)))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/2 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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* 2 (/ re im))))
(*.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/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 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))) 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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 re re) (fma.f64 (*.f64 #s(literal 1/4 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)))) 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) (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)))) im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) #s(literal 1/2 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 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (fma.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 (/.f64 re im) im) #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/16 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* 1/2 (* (pow 4 1/4) (sqrt (/ 1 im))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 4 1/4) (sqrt (/ 1 im)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* (pow im 2) (+ 4 (* 8 (/ re im))))
(*.f64 (fma.f64 #s(literal 8 binary64) (/.f64 re im) #s(literal 4 binary64)) (*.f64 im im))
(* (pow im 2) (+ 4 (+ (* 8 (/ re im)) (* 8 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 #s(literal 8 binary64) (fma.f64 re (/.f64 (/.f64 re im) im) (/.f64 re im)) #s(literal 4 binary64)) (*.f64 im im))
(* (pow im 2) (+ 4 (+ (* 4 (/ (pow re 3) (pow im 3))) (+ (* 8 (/ re im)) (* 8 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 4 binary64) (fma.f64 #s(literal 8 binary64) (fma.f64 re (/.f64 (/.f64 re im) im) (/.f64 re im)) #s(literal 4 binary64))) (*.f64 im im))
(* (pow im 2) (+ (* 4 (/ 1 (pow im 2))) (/ 1 (pow re 2))))
(*.f64 (+.f64 (/.f64 #s(literal 4 binary64) (*.f64 im im)) (/.f64 (/.f64 #s(literal 1 binary64) re) re)) (*.f64 im im))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 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 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 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) (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/16 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (neg.f64 (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (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 #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)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (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) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 #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 re re) (neg.f64 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 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/4 binary64) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal -2 binary64)))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(*.f64 (neg.f64 im) (-.f64 #s(literal -2 binary64) (/.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) im)))
(* -1/2 (* (sqrt im) (sqrt -1)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/4 binary64))))
(* -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 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 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))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/4 binary64)))))
(* -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 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -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 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) 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 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) 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 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -1/2 (* (pow 4 1/4) (* (sqrt im) (sqrt -1))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im)))
(* -1 (* im (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))
(* -1 (* im (+ (* -1/8 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1))))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1))))) (* 1/8 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1)))))) (pow im 3))) (+ (* 1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.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) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 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)) (*.f64 re re)) (sqrt.f64 im)) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -1 (* (pow 4 1/4) (* (sqrt im) (sqrt -1))))
(*.f64 (neg.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im)))
(* -1 (* im (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))))
(* -1 (* im (+ (* -1/4 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1))))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1))))) (* 1/4 (* (pow 4 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1)))))) (pow im 3))) (+ (* 1/2 (* (pow 4 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 4 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* (pow im 2) (+ 4 (* -8 (/ re im))))
(*.f64 (fma.f64 #s(literal -8 binary64) (/.f64 re im) #s(literal 4 binary64)) (*.f64 im im))
(* (pow im 2) (+ 4 (* -1 (/ (+ (* -8 (/ (pow re 2) im)) (* 8 re)) im))))
(*.f64 (-.f64 #s(literal 4 binary64) (/.f64 (fma.f64 #s(literal -8 binary64) (*.f64 (/.f64 re im) re) (*.f64 #s(literal 8 binary64) re)) im)) (*.f64 im im))
(* (pow im 2) (+ 4 (* -1 (/ (+ (* -1 (/ (+ (* -4 (/ (pow re 3) im)) (* 8 (pow re 2))) im)) (* 8 re)) im))))
(*.f64 (-.f64 #s(literal 4 binary64) (/.f64 (fma.f64 #s(literal 8 binary64) re (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal -4 binary64) (*.f64 #s(literal 8 binary64) (*.f64 re re))) (neg.f64 im))) im)) (*.f64 im im))

rewrite220.0ms (3.3%)

Memory
8.7MiB live, 245.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049463
077398
1253390
21462390
08243310
Stop Event
iter limit
node limit
iter limit
Counts
24 → 393
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))
(*.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))
(*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(*.f64 (/.f64 (neg.f64 im) re) im)
Outputs
(*.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))
(*.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 (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 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im)))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (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)))
(*.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(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 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))
(/.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 (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im))) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #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)))))
(fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #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 im re) #s(literal -3 binary64))) re) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #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 im re) #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 im re) #s(literal -3 binary64)))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #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(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))))
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re))))
#s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt.f64 (*.f64 #s(literal 2 binary64) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (*.f64 #s(literal 2 binary64) re) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(literal 2 binary64) re))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (log.f64 re) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 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) re)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))) im)
(*.f64 (/.f64 im (pow.f64 im #s(literal -1 binary64))) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 im (pow.f64 im #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) re))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (*.f64 im 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 (*.f64 (neg.f64 im) im) (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #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) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 re (pow.f64 im #s(literal -2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 im (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(*.f64 im (/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 im (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re)) im))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) #s(literal 1 binary64))
(/.f64 (/.f64 (neg.f64 im) re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (neg.f64 im) (neg.f64 (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 #s(literal -1 binary64) (*.f64 re (pow.f64 im #s(literal -2 binary64))))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 im (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re)))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) im)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 re im)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))) (/.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (neg.f64 re) im) im)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 4 binary64)) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (fma.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64) (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64))))
(exp.f64 (fma.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64) (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 4 binary64))) #s(literal 1/8 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1 binary64))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1 binary64)))
(*.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 (*.f64 #s(literal 4 binary64) re) (*.f64 #s(literal 4 binary64) re))) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal 4 binary64) re)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 #s(literal 4 binary64) 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 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (*.f64 (*.f64 re #s(literal 4 binary64)) (*.f64 re #s(literal 4 binary64)))) (-.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re #s(literal 4 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 re #s(literal 4 binary64)) (*.f64 re #s(literal 4 binary64))) (*.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 re #s(literal 4 binary64)) (*.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 (*.f64 #s(literal 4 binary64) re) (*.f64 #s(literal 4 binary64) re)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal 4 binary64) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 4 binary64) re) (*.f64 #s(literal 4 binary64) 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 (+.f64 (pow.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 re #s(literal 4 binary64)) #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 (*.f64 re #s(literal 4 binary64)) (*.f64 re #s(literal 4 binary64))) (*.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re #s(literal 4 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re #s(literal 4 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 re #s(literal 4 binary64)) (*.f64 re #s(literal 4 binary64)) (-.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 re #s(literal 4 binary64)) (*.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)) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) 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)))) (neg.f64 (-.f64 (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 #s(literal 4 binary64) re (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(fma.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 4 binary64)))
(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 #s(literal 4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(+.f64 (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 re #s(literal 4 binary64)))
(+.f64 (*.f64 re #s(literal 4 binary64)) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 4 binary64)) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (fma.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64) (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64))))
(exp.f64 (fma.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64) (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64))))
(exp.f64 (fma.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/8 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 4 binary64))) #s(literal 1/8 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))))
(*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64)))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1 binary64))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1 binary64)))
(*.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (pow.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal -1 binary64)))
(*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 4 binary64) (/.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) (/.f64 im re)))))
(*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (*.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)))
(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 im re) #s(literal -2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 (pow.f64 (/.f64 im re) #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 im re) #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 im re) #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 im re) #s(literal -2 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64))) (/.f64 (pow.f64 (/.f64 im re) #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 im re) #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 im re) #s(literal -2 binary64)))) (neg.f64 (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)))) (neg.f64 (neg.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #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 im re) #s(literal -2 binary64))) (-.f64 #s(literal 2 binary64) (/.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64))) (neg.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64)))) (neg.f64 (+.f64 #s(literal 4 binary64) (/.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) (/.f64 im re)))))
(/.f64 (neg.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (*.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64)) (-.f64 (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64))) (+.f64 #s(literal 4 binary64) (/.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) (/.f64 im re))))
(/.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 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 im re) #s(literal -2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 4 binary64) (/.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) (/.f64 im re))) (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 im re) #s(literal -3 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 #s(literal 1 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)))))
(fma.f64 (pow.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64))
(fma.f64 (pow.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal -1 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 (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 (pow.f64 (/.f64 im re) #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 (neg.f64 re) (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 re im) #s(literal 2 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) im) (pow.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)) #s(literal 2 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) im) (*.f64 re #s(literal -1 binary64)) #s(literal 2 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) im) (neg.f64 re) #s(literal 2 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) im) (pow.f64 re #s(literal -1 binary64))) #s(literal 2 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im) #s(literal 2 binary64))
(fma.f64 (/.f64 re im) #s(literal 1 binary64) #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 im re) #s(literal -2 binary64)) (-.f64 #s(literal 2 binary64) (/.f64 re im))))
(-.f64 (/.f64 (pow.f64 (/.f64 im re) #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 im re) #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)))
(*.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(*.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))) (*.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))) (+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))) (neg.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 16 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64))) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.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)))))
(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 (/.f64 (/.f64 im re) (neg.f64 re)) (neg.f64 im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) re) (*.f64 (neg.f64 im) im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 re)) (*.f64 im im) #s(literal 4 binary64))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)) (*.f64 (neg.f64 im) im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im) #s(literal 4 binary64))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (/.f64 im re) im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 im (pow.f64 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 (pow.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 2 binary64)) (*.f64 im im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 im re) re) im #s(literal 4 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im) #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 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re))) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) re)) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (*.f64 re (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 (/.f64 #s(literal -1 binary64) re) re) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (*.f64 (/.f64 im re) im) (pow.f64 re #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (/.f64 im re) im) #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 #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 (*.f64 (/.f64 (neg.f64 im) re) im) (/.f64 #s(literal -1 binary64) re) #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 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (/.f64 re im))) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 (/.f64 im re) (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 re im)) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 (/.f64 (neg.f64 im) re) re) #s(literal 4 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) re) #s(literal 4 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (/.f64 (neg.f64 im) re) (/.f64 re im)) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(fma.f64 (*.f64 im im) (/.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 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 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))
(-.f64 (/.f64 #s(literal 16 binary64) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (neg.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)) (*.f64 im im))
(*.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))) im)
(*.f64 (/.f64 im (pow.f64 im #s(literal -1 binary64))) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 im (pow.f64 im #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) re))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) im) im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (*.f64 im 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 (*.f64 (neg.f64 im) im) (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #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) re) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 im) (/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 re (pow.f64 im #s(literal -2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 im (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(*.f64 im (/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 im (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1 binary64))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re)) im))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) #s(literal 1 binary64))
(/.f64 (/.f64 (neg.f64 im) re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (neg.f64 im) (neg.f64 (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 #s(literal -1 binary64) (*.f64 re (pow.f64 im #s(literal -2 binary64))))
(/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 im (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re)))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) im)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 re im)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))) (/.f64 (neg.f64 im) (*.f64 (pow.f64 im #s(literal -1 binary64)) (neg.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (neg.f64 re) im)) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (neg.f64 re) im) im)) #s(literal -1 binary64)))

eval102.0ms (1.5%)

Memory
-22.2MiB live, 140.4MiB allocated
Compiler

Compiled 21 122 to 2 787 computations (86.8% saved)

prune20.0ms (0.3%)

Memory
14.8MiB live, 53.4MiB allocated
Pruning

18 alts after pruning (3 fresh and 15 done)

PrunedKeptTotal
New5231524
Fresh022
Picked055
Done01010
Total52318541
Accuracy
91.8%
Counts
541 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
48.1%
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
50.6%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
27.6%
(*.f64 (*.f64 #s(approx (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
75.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
48.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
27.9%
(*.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))
48.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
45.1%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
13.0%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64)))
18.8%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 2 binary64))))
41.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
4.7%
(*.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))))
50.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
20.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
27.9%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 902 to 413 computations (54.2% saved)

regimes60.0ms (0.9%)

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

7 calls:

15.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
7.0ms
im
7.0ms
re
7.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))))
Results
AccuracySegmentsBranch
83.0%2re
75.3%1im
82.4%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))))
82.4%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
83.2%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
83.2%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
75.3%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes40.0ms (0.6%)

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

7 calls:

7.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 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
5.0ms
im
5.0ms
re
5.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
67.1%3im
67.1%3(*.f64 im im)
71.9%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))))
71.9%4(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
74.7%4re
72.7%4(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
72.7%4(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes4.0ms (0.1%)

Memory
14.6MiB live, 14.6MiB allocated
Counts
11 → 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 #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) re) im))))
(*.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 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 re im))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 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
72.8%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes18.0ms (0.3%)

Memory
-2.4MiB live, 35.2MiB allocated
Counts
5 → 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 #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

7 calls:

4.0ms
re
2.0ms
im
2.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
2.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
2.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
61.5%2im
61.5%2(*.f64 im im)
50.9%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))))
50.9%1(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
50.9%1(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
50.9%1(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
63.5%2re
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes11.0ms (0.2%)

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

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

Compiled 55 to 45 computations (18.2% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.2438531747951641e-303
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch344.0ms (5.1%)

Memory
6.2MiB live, 82.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
75.0ms
3.0311846880355147e+134
8.313415685008423e+138
16.0ms
7.889633033539473e-138
1.3681637819765375e-120
248.0ms
-1.8625710585106065e+68
-7.179706292672461e+62
Samples
308.0ms357×0valid
8.0ms40×2valid
3.0ms12×3valid
3.0ms23×1valid
Compiler

Compiled 973 to 807 computations (17.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 87.0ms
ival-add: 64.0ms (73.4% of total)
ival-hypot: 11.0ms (12.6% of total)
ival-mult: 6.0ms (6.9% of total)
ival-sqrt: 4.0ms (4.6% of total)
adjust: 1.0ms (1.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch59.0ms (0.9%)

Memory
14.1MiB live, 51.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
7.0ms
10963000208.74233
16587071560.4891
48.0ms
-7.179706292672461e+62
-3.245866105477061e+49
Samples
30.0ms138×0valid
8.0ms43×2valid
5.0ms18×3valid
3.0ms25×1valid
Compiler

Compiled 576 to 454 computations (21.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-hypot: 8.0ms (45% of total)
ival-mult: 4.0ms (22.5% of total)
adjust: 2.0ms (11.3% of total)
ival-add: 2.0ms (11.3% of total)
ival-sqrt: 2.0ms (11.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch25.0ms (0.4%)

Memory
-36.3MiB live, 8.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
24.0ms
1.453665207567261e-39
9.335787652026874e-38
Samples
19.0ms112×0valid
Compiler

Compiled 277 to 231 computations (16.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-hypot: 2.0ms (44.6% of total)
ival-mult: 1.0ms (22.3% of total)
ival-sqrt: 1.0ms (22.3% of total)
ival-true: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify109.0ms (1.6%)

Memory
12.9MiB live, 51.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
073257
187257
299257
3111257
4123257
5131257
6139257
7166257
8281257
9355257
10422257
11556257
12758257
13974257
141133257
151365257
161634257
171912257
182365257
193124257
204474257
215809257
227659257
Stop Event
node limit
Calls
Call 1
Inputs
(if (<=.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -125000000000000009066429547691154390769796801205815244439776269434880 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) (if (<=.f64 re #s(literal 2301602771176975/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) (if (<=.f64 re #s(literal 7999999999999999694637526734519518907593882690214281211563232987640803232445245525409533681316756482949618316644256568730490091069243392 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(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -2399999999999999850807477239976319853127394232631296 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) (if (<=.f64 re #s(literal 15600000000 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 1915619426082361/95780971304118053647396689196894323976171195136475136 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 (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -125000000000000009066429547691154390769796801205815244439776269434880 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) (if (<=.f64 re #s(literal 2301602771176975/12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) (if (<=.f64 re #s(literal 7999999999999999694637526734519518907593882690214281211563232987640803232445245525409533681316756482949618316644256568730490091069243392 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(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -2399999999999999850807477239976319853127394232631296 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) (if (<=.f64 re #s(literal 15600000000 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 1915619426082361/95780971304118053647396689196894323976171195136475136 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))

soundness723.0ms (10.7%)

Memory
21.4MiB live, 379.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041332
063332
1195332
21006331
08590241
037230
061178
1165178
2749178
37966178
08666178
05002884
116592707
259152687
084512523
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
iter limit
node limit
iter limit
Compiler

Compiled 484 to 236 computations (51.2% saved)

preprocess201.0ms (3%)

Memory
-22.4MiB live, 61.1MiB allocated
Remove

(abs im)

Compiler

Compiled 714 to 278 computations (61.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...