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

Time bar (total: 7.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze122.0ms (1.7%)

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

Compiled 19 to 12 computations (36.8% saved)

sample1.9s (26%)

Memory
18.6MiB live, 1 993.1MiB allocated
Samples
960.0ms6 212×0valid
245.0ms762×2valid
173.0ms472×3valid
152.0ms810×1valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-hypot: 349.0ms (31.4% of total)
ival->: 347.0ms (31.2% of total)
ival-mult: 167.0ms (15% of total)
ival-sub: 108.0ms (9.7% of total)
ival-sqrt: 86.0ms (7.7% of total)
adjust: 38.0ms (3.4% of total)
exact: 13.0ms (1.2% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain199.0ms (2.7%)

Memory
9.0MiB live, 323.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1390-0-(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
350-0-(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
260-2(5.2469982188971466e+141 4.496286969896431e-88)(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 im im)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1260
(+.f64 (*.f64 re re) (*.f64 im im))overflow126
(*.f64 re re)overflow70
(*.f64 im im)overflow71
-.f64(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation350
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue230
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow30
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow7
(*.f64 re re)underflow56
(*.f64 im im)underflow60
(+.f64 (*.f64 re re) (*.f64 im im))underflow13
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow30
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue130
(+.f64 (*.f64 re re) (*.f64 im im))underflow13
(*.f64 re re)underflow56
(*.f64 im im)underflow60
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))oflow-rescue10
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))overflow1
(*.f64 re re)overflow70
(*.f64 im im)overflow71
(+.f64 (*.f64 re re) (*.f64 im im))overflow126
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)overflow1
Confusion
Predicted +Predicted -
+1710
-085
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+17100
-0085
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
085
1144
227
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
38.0ms384×0valid
14.0ms48×2valid
11.0ms52×1valid
10.0ms28×3valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 51.0ms
ival-mult: 19.0ms (37.4% of total)
ival-hypot: 16.0ms (31.5% of total)
ival-sqrt: 5.0ms (9.8% of total)
adjust: 4.0ms (7.9% of total)
ival-sub: 4.0ms (7.9% of total)
ival-add: 3.0ms (5.9% of total)
exact: 1.0ms (2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess56.0ms (0.8%)

Memory
6.2MiB live, 60.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03077
17175
215275
328575
442875
551775
664475
785775
899275
01215
02015
12515
23615
35215
47315
59815
615415
725515
834615
939715
1046315
1147715
1249315
1351315
1454315
1558515
1659915
1760115
060110
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
0.6MiB live, 0.6MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
36.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))))
Compiler

Compiled 15 to 12 computations (20% saved)

simplify25.0ms (0.3%)

Memory
-12.2MiB live, 24.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
12575
23675
35275
47375
59875
615475
725575
834675
939775
1046375
1147775
1249375
1351375
1454375
1558575
1659975
1760175
060149
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

localize45.0ms (0.6%)

Memory
8.4MiB live, 83.5MiB 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.655646507740059
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy7.919014917640224
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy32.39226420860321
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
19.0ms192×0valid
8.0ms24×2valid
5.0ms14×3valid
4.0ms26×1valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-hypot: 9.0ms (37.5% of total)
ival-mult: 8.0ms (33.4% of total)
adjust: 2.0ms (8.3% of total)
ival-sub: 2.0ms (8.3% of total)
ival-sqrt: 2.0ms (8.3% of total)
ival-add: 1.0ms (4.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series25.0ms (0.3%)

Memory
1.3MiB live, 44.3MiB allocated
Counts
6 → 113
Calls
Call 1
Inputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Outputs
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Calls

6 calls:

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

simplify174.0ms (2.4%)

Memory
24.3MiB live, 256.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05513021
118142867
264042838
081302681
Stop Event
iter limit
node limit
Counts
113 → 111
Calls
Call 1
Inputs
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
Outputs
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 im im (*.f64 re re))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal -2 binary64)) re (*.f64 #s(literal 2 binary64) im))
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal -1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal -1 binary64)) re im)
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 1 binary64)) (*.f64 re re))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/512 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/256 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 5 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64))))) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 re re) (/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 1/2 (/ (pow im 2) re))
(/.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im im)) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) re)
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1 binary64))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im) (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal -1 binary64))) #s(literal -2 binary64))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 1 binary64)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 1 binary64))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 2 binary64)))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 2 binary64))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 im re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/32 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 re) (fma.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) #s(literal -1/8 binary64) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal -1/4 binary64)))) (*.f64 im im))) (*.f64 im im))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 re) (fma.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) #s(literal -1/8 binary64) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal -1/2 binary64)))) (*.f64 im im))) (*.f64 im im))) im)
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) re))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/64 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 im im) re))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) im) im (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -5/128 binary64) (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) #s(literal 1 binary64)) im) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 re im) (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/4 binary64)) (pow.f64 im #s(literal 4 binary64)))) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))) (/.f64 re im)) im)
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/4 binary64))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64))) (*.f64 (*.f64 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re (/.f64 re im)) im) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 re im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im))
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64)) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(neg.f64 (fma.f64 (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/8 binary64) im) (*.f64 #s(literal 1/2 binary64) (*.f64 re re))) im) re) im) im im))

rewrite202.0ms (2.8%)

Memory
5.0MiB live, 196.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

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

eval154.0ms (2.1%)

Memory
-20.8MiB live, 112.2MiB allocated
Compiler

Compiled 11 995 to 2 496 computations (79.2% saved)

prune39.0ms (0.5%)

Memory
-4.5MiB live, 34.8MiB allocated
Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New39112403
Fresh000
Picked101
Done000
Total39212404
Accuracy
99.5%
Counts
404 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
78.5%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
36.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
54.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
51.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
16.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
51.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
20.8%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)))
26.8%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
26.7%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 582 to 432 computations (25.8% saved)

simplify208.0ms (2.9%)

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

Found 20 expressions of interest:

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

Useful iterations: 5 (0.0ms)

IterNodesCost
040370
067305
1106305
2170305
3339305
4656301
51118297
62308297
73962297
85332297
96506297
106659297
116711297
126755297
137159297
08507297
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(neg.f64 re)
re
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
#s(literal 4 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 im re) re)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 im re)
(hypot.f64 re im)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
#s(literal -4 binary64)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #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 im re)) #s(literal 2 binary64))
#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)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re)))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
(neg.f64 re)
re
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
(/.f64 im re)
im
#s(literal 4 binary64)

localize144.0ms (2%)

Memory
-6.2MiB live, 154.5MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.11328125
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
accuracy2.152683172812979
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
accuracy5.655646507740059
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
accuracy46.90480690218891
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
accuracy0.00390625
(-.f64 (/.f64 re im) #s(literal 2 binary64))
accuracy0.046875
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy5.655646507740059
(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))))
accuracy30.579494248961463
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
accuracy0.0
(*.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.00390625
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy5.655646507740059
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
accuracy29.15089847665391
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
accuracy0.0
(*.f64 #s(literal -4 binary64) re)
accuracy5.655646507740059
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
accuracy47.058627386594075
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
accuracy0.0
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.00390625
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy5.655646507740059
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy7.919014917640224
(-.f64 (hypot.f64 im re) re)
Samples
59.0ms192×0valid
19.0ms24×2valid
11.0ms14×3valid
10.0ms26×1valid
Compiler

Compiled 673 to 71 computations (89.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 74.0ms
ival-mult: 23.0ms (30.9% of total)
ival-sub: 21.0ms (28.2% of total)
ival-hypot: 13.0ms (17.5% of total)
ival-sqrt: 5.0ms (6.7% of total)
adjust: 4.0ms (5.4% of total)
ival-div: 4.0ms (5.4% of total)
ival-add: 2.0ms (2.7% of total)
ival-neg: 1.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series17.0ms (0.2%)

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

6 calls:

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

simplify171.0ms (2.4%)

Memory
-6.6MiB live, 145.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite200.0ms (2.8%)

Memory
9.9MiB live, 133.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040334
067264
1225264
21380264
08344264
Stop Event
iter limit
node limit
iter limit
Counts
22 → 409
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -4 binary64) re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.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)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))
(-.f64 (/.f64 re im) #s(literal 2 binary64))
(fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))) (-.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (hypot.f64 re im))) (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))) (-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re))) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 re im) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (fma.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (*.f64 re (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 re (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re)))))
(/.f64 (fma.f64 (neg.f64 (*.f64 re re)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (*.f64 re (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 re (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(/.f64 (fma.f64 (neg.f64 (*.f64 re re)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 re (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (neg.f64 (*.f64 re re)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (*.f64 re (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 re (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re)))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (fma.f64 re re #s(literal 0 binary64)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) re))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) re (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) re))
(/.f64 (fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) re (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) re))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) re (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (neg.f64 (*.f64 re re)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) re))
(/.f64 (fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re #s(literal 0 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64)))) (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (neg.f64 (*.f64 re re)) (pow.f64 re #s(literal -1 binary64)) (hypot.f64 re im))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 im re)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 re re #s(literal 0 binary64))) (hypot.f64 re im))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 re im))
(fma.f64 #s(literal 1 binary64) (neg.f64 re) (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (neg.f64 re) #s(literal 1 binary64) (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 re im))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 re im) re)
(+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(+.f64 (neg.f64 re) (hypot.f64 re im))
(+.f64 (hypot.f64 re im) (neg.f64 re))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal 4 binary64) re))
(*.f64 #s(literal -1 binary64) (*.f64 re #s(literal 4 binary64)))
(*.f64 #s(literal 4 binary64) (neg.f64 re))
(*.f64 (neg.f64 re) #s(literal 4 binary64))
(*.f64 #s(literal -4 binary64) re)
(*.f64 re #s(literal -4 binary64))
(neg.f64 (*.f64 #s(literal 4 binary64) re))
(neg.f64 (*.f64 re #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal 4 binary64) re))
(-.f64 #s(literal 0 binary64) (*.f64 re #s(literal 4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 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 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))
(*.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 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(*.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (pow.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (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)))
(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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (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 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 #s(literal 4 binary64) (*.f64 im im) (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))
(fma.f64 (*.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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64)) re) (pow.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64))) (pow.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re)) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (pow.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)) re)
(*.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))))
(*.f64 #s(literal -1 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))
(*.f64 (neg.f64 re) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(*.f64 re (neg.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))) (+.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (*.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re)))))
(/.f64 (fma.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (+.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re)) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64))) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (neg.f64 re) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (neg.f64 re) (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)) (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re)))) (fma.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 (neg.f64 re) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(neg.f64 (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(fma.f64 (/.f64 (neg.f64 re) re) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (*.f64 (/.f64 im re) im) (neg.f64 re)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (*.f64 im im) (neg.f64 re)) (pow.f64 re #s(literal -2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (*.f64 (/.f64 im re) im)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (*.f64 im im)) (pow.f64 re #s(literal -2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal -1 binary64)) re (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 re) (/.f64 im re)) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) (/.f64 (neg.f64 re) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 #s(literal 4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 #s(literal -1 binary64) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 re #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal 4 binary64) (neg.f64 re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 (/.f64 im re) (*.f64 (/.f64 im re) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (neg.f64 re) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (neg.f64 re) #s(literal 4 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 #s(literal -4 binary64) re (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(fma.f64 re #s(literal -4 binary64) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(-.f64 (/.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))) (/.f64 (pow.f64 (*.f64 #s(literal -4 binary64) re) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 re (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal 4 binary64) re))
(-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 re #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) re))
(+.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)))
(+.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (neg.f64 re)) (*.f64 #s(literal -4 binary64) re))
(+.f64 #s(literal 0 binary64) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re))))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (neg.f64 re)))
(*.f64 (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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 #s(literal 1 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))
(*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #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 -3 binary64)) #s(literal 8 binary64)) (pow.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 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 (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))))) (*.f64 (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))))) (+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (-.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 (-.f64 (pow.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (fma.f64 (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) (*.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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64)))) (neg.f64 (neg.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (*.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) #s(literal 8 binary64))) (*.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))))
(/.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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64))) (neg.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64))) (neg.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -2 binary64)))) (-.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64)) (+.f64 (pow.f64 (/.f64 im re) #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 -3 binary64)) #s(literal 8 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #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 (/.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 #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) (neg.f64 re) #s(literal -2 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im) #s(literal -2 binary64))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) #s(literal -2 binary64))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) re #s(literal -2 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 re im) #s(literal -2 binary64))
(fma.f64 (pow.f64 (/.f64 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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (pow.f64 (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))) #s(literal -1 binary64)) (neg.f64 (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))))))
(fma.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) 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 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -2 binary64))))) (/.f64 #s(literal 8 binary64) (+.f64 (pow.f64 (/.f64 im re) #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 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))))
(-.f64 #s(literal -2 binary64) (/.f64 (neg.f64 re) im))
(-.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))) (neg.f64 (/.f64 #s(literal 4 binary64) (-.f64 (/.f64 re im) #s(literal -2 binary64)))))
(+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64)))) (neg.f64 (/.f64 #s(literal 8 binary64) (+.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 4 binary64)) (pow.f64 (/.f64 im re) #s(literal -2 binary64))))))
(+.f64 #s(literal -2 binary64) (/.f64 re im))
(+.f64 (/.f64 re im) #s(literal -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 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(*.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 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)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))) (*.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))) (+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))) (neg.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)))) (neg.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 16 binary64))) (*.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64))) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64))) (neg.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (-.f64 #s(literal 16 binary64) (pow.f64 (/.f64 im re) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 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 #s(literal 1 binary64) (+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (+.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(/.f64 (+.f64 #s(literal 64 binary64) (pow.f64 (/.f64 im re) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) #s(literal 16 binary64)) (*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(fma.f64 (/.f64 (/.f64 im re) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1 binary64)) (*.f64 (/.f64 im re) im) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)) (*.f64 (neg.f64 im) (/.f64 im re)) #s(literal 4 binary64))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 im (/.f64 (neg.f64 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 im re) (neg.f64 re)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) im)) (/.f64 (/.f64 im re) (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 im re) (pow.f64 im #s(literal -1 binary64))) (pow.f64 re #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 re)) (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) im)) (/.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 re)) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) re) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) re) re) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 re im)) #s(literal 4 binary64))
(fma.f64 (/.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 #s(literal -1 binary64) im)) (/.f64 im re) #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 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)) (/.f64 im (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (/.f64 im (/.f64 #s(literal -1 binary64) im)) (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 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 (/.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im)) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (neg.f64 re) im)) #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 (neg.f64 im) re) (/.f64 (/.f64 im re) #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (neg.f64 im) re) #s(literal 4 binary64))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (neg.f64 (*.f64 (/.f64 im re) im)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (neg.f64 (*.f64 im im)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re))) #s(literal 4 binary64))
(fma.f64 (*.f64 (/.f64 im re) (neg.f64 im)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) (/.f64 im re)) (/.f64 #s(literal -1 binary64) re) #s(literal 4 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) re)) #s(literal 4 binary64))
(fma.f64 (*.f64 im (neg.f64 im)) (/.f64 #s(literal 1 binary64) (*.f64 re (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -2 binary64)) (*.f64 im im) #s(literal 4 binary64))
(fma.f64 (*.f64 (/.f64 im re) im) (pow.f64 re #s(literal -1 binary64)) #s(literal 4 binary64))
(fma.f64 #s(literal -1 binary64) (/.f64 (/.f64 im re) (/.f64 (neg.f64 re) im)) #s(literal 4 binary64))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 im re) (pow.f64 im #s(literal -1 binary64))) #s(literal 4 binary64))
(fma.f64 #s(literal 1 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (pow.f64 (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal -1 binary64)) (neg.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(fma.f64 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) (neg.f64 re))) #s(literal 4 binary64))
(fma.f64 (neg.f64 im) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (/.f64 re im))) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 #s(literal -1 binary64) im)) #s(literal 4 binary64))
(fma.f64 (/.f64 im re) (/.f64 im 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 #s(literal -1 binary64) re) (/.f64 (neg.f64 re) im)) #s(literal 4 binary64))
(fma.f64 im (/.f64 (/.f64 im re) re) #s(literal 4 binary64))
(fma.f64 im (*.f64 im (pow.f64 re #s(literal -2 binary64))) #s(literal 4 binary64))
(fma.f64 im (pow.f64 (*.f64 re (/.f64 re im)) #s(literal -1 binary64)) #s(literal 4 binary64))
(-.f64 (/.f64 #s(literal 16 binary64) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))))
(+.f64 (/.f64 (pow.f64 (/.f64 im re) #s(literal 4 binary64)) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))) (neg.f64 (/.f64 #s(literal 16 binary64) (-.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64)))))
(+.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) #s(literal 4 binary64))
(+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))

eval88.0ms (1.2%)

Memory
16.0MiB live, 90.7MiB allocated
Compiler

Compiled 18 700 to 2 929 computations (84.3% saved)

prune20.0ms (0.3%)

Memory
-15.4MiB live, 33.2MiB allocated
Pruning

15 alts after pruning (10 fresh and 5 done)

PrunedKeptTotal
New5109519
Fresh617
Picked055
Done000
Total51615531
Accuracy
99.6%
Counts
531 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
78.5%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
17.3%
(*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* im im) (* re re))) re) (*.f64 (*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) im) im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
16.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
16.0%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))) #s(literal 1/2 binary64))
51.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
20.8%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)) #s(literal 1/2 binary64))
26.8%
(*.f64 #s(approx (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
36.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
54.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
51.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 re) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
24.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))))
26.7%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 661 to 482 computations (27.1% saved)

simplify95.0ms (1.3%)

Memory
-5.8MiB live, 106.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
060500
091500
1152500
2296500
3732496
41732484
53233476
64897476
08049407
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#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)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))
#s(literal -4 binary64)
re
(/.f64 (*.f64 im im) (neg.f64 re))
(*.f64 im im)
im
(neg.f64 re)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
#s(literal 1/2 binary64)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
im
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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 (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))
(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 (/.f64 im (pow.f64 re #s(literal 3 binary64))))
im
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
#s(literal -1/4 binary64)
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 im im)
#s(literal 1/2 binary64)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 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))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))))
#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 im #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re)))
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))
(fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
#s(literal -4 binary64)
re
(/.f64 (*.f64 im im) (neg.f64 re))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im im)
im
(neg.f64 re)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 im (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 im (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 im (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
im
(sqrt.f64 #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.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 (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im))
(*.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 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im)
(fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re))
(fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal 1 binary64) re))
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
im
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
#s(literal -1/4 binary64)
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
(*.f64 im im)
#s(literal 1/2 binary64)

localize165.0ms (2.3%)

Memory
0.5MiB live, 243.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy2.8919382526217023
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
accuracy4.276665861938208
(*.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))
accuracy5.41346777148111
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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))))
accuracy17.40367654468527
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))
accuracy0.1328125
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
accuracy0.21875
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
accuracy0.24609375
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
accuracy16.424713524877767
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
accuracy0.00390625
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))
accuracy4.260750706759579
(/.f64 (*.f64 im im) (neg.f64 re))
accuracy5.41346777148111
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))))
accuracy33.25695353415443
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 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.41346777148111
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy15.556543254029412
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.27181625976844204
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
accuracy5.429219834660949
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy16.05017564473745
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
Samples
40.0ms121×0invalid
30.0ms24×2valid
30.0ms71×0valid
15.0ms14×3valid
14.0ms26×1valid
Compiler

Compiled 836 to 111 computations (86.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 89.0ms
ival-mult: 30.0ms (33.8% of total)
ival-sqrt: 15.0ms (16.9% of total)
ival-hypot: 14.0ms (15.8% of total)
ival-div: 7.0ms (7.9% of total)
adjust: 6.0ms (6.8% of total)
ival-add: 6.0ms (6.8% of total)
ival-sub: 4.0ms (4.5% of total)
ival-pow: 4.0ms (4.5% 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)

series41.0ms (0.6%)

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

6 calls:

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

simplify308.0ms (4.2%)

Memory
-3.4MiB live, 247.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite220.0ms (3%)

Memory
7.0MiB live, 164.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060433
091425
1292420
21807407
08114342
Stop Event
iter limit
node limit
iter limit
Counts
25 → 282
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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))))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.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)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(/.f64 (*.f64 im im) (neg.f64 re))
(fma.f64 #s(literal -4 binary64) re (/.f64 (*.f64 im im) (neg.f64 re)))
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
Outputs
(*.f64 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 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 #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 (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 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (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)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #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 im #s(literal 2 binary64)))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))
(*.f64 im #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) im)
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))
#s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) (*.f64 im #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 im #s(literal 1 binary64)) (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 re))
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 im #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 im #s(literal 1/2 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.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)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (*.f64 im #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) (*.f64 im im))
(*.f64 (*.f64 im im) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))))
(*.f64 im (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))) (*.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) #s(literal 3 binary64))) (fma.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))) (*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (-.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (/.f64 im re) im)))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -3 binary64)) (pow.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) #s(literal 3 binary64))) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))) (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 re #s(literal -2 binary64))) (*.f64 im im))) (neg.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal -1 binary64) re))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/64 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) (pow.f64 re #s(literal -3 binary64))) (*.f64 im im))) (neg.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) re)))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 re #s(literal -2 binary64))))) (neg.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal -1 binary64) re))))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/64 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) (pow.f64 re #s(literal -3 binary64))))) (neg.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) re)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 re #s(literal -2 binary64))) (*.f64 im im)) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal -1 binary64) re)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/64 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) (pow.f64 re #s(literal -3 binary64))) (*.f64 im im)) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) re))))
(/.f64 (*.f64 (*.f64 im im) (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) #s(literal 2 binary64)) (pow.f64 re #s(literal -2 binary64)))) (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (/.f64 #s(literal -1 binary64) re)))
(/.f64 (*.f64 (*.f64 im im) (fma.f64 #s(literal -1/64 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) (pow.f64 re #s(literal -3 binary64)))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 2 binary64)) (-.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) re))))
(fma.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 im re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 im #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 im re) im) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 (/.f64 im re) im))
(fma.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 im re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 im re) (/.f64 im #s(literal 1 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 im re) (/.f64 (neg.f64 im) #s(literal -1 binary64)) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 (/.f64 im re) im (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(fma.f64 im (/.f64 im re) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(+.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)) (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)))
(+.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))) (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 (/.f64 im re) im) (*.f64 (*.f64 im im) (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) 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 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 im #s(literal 1 binary64)))
(*.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 (*.f64 im im) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #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 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im re) (/.f64 im #s(literal -1 binary64)))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (neg.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64))) (neg.f64 re))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 im) im))) re)
(/.f64 (neg.f64 (*.f64 (*.f64 im im) #s(literal 1 binary64))) re)
(/.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) re)
(/.f64 (neg.f64 (*.f64 (neg.f64 im) im)) (neg.f64 re))
(/.f64 (*.f64 (*.f64 im im) #s(literal 1 binary64)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 re (*.f64 (neg.f64 im) im))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 re (*.f64 (neg.f64 im) im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 re))
(neg.f64 (*.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 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (*.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)))))))
(/.f64 (-.f64 (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (fma.f64 #s(literal 16 binary64) (*.f64 re re) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 16 binary64) (*.f64 re re)))) (neg.f64 (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (*.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))))) (*.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (/.f64 re (/.f64 re (*.f64 im im))))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re)))))
(/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (/.f64 re (/.f64 re (*.f64 im im)))))))
(/.f64 (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im)) (-.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re)) (*.f64 #s(literal 16 binary64) (*.f64 re re))) (fma.f64 (pow.f64 (neg.f64 re) #s(literal -3 binary64)) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal -64 binary64) (pow.f64 re #s(literal 3 binary64))))))
(fma.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 im #s(literal 1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) #s(literal 1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -1 binary64) (*.f64 re #s(literal 4 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re))
(fma.f64 (neg.f64 re) #s(literal 4 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 #s(literal -4 binary64) re (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 #s(literal 4 binary64) (neg.f64 re) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (/.f64 im re) (/.f64 im #s(literal -1 binary64)) (*.f64 #s(literal -4 binary64) re))
(fma.f64 im (/.f64 (neg.f64 im) re) (*.f64 #s(literal -4 binary64) re))
(fma.f64 re #s(literal -4 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(-.f64 (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re))) (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re))))
(-.f64 (/.f64 (*.f64 #s(literal 16 binary64) (*.f64 re re)) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))) (/.f64 (*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 im #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))))
(-.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 #s(literal -4 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 #s(literal -4 binary64) re))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))))
(*.f64 (/.f64 (neg.f64 im) (*.f64 re re)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))) (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 (*.f64 im im) (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))))
(*.f64 (/.f64 #s(literal -1 binary64) (*.f64 re re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 im (neg.f64 (*.f64 re re))) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (pow.f64 re #s(literal -3 binary64)))
(*.f64 (/.f64 (/.f64 im re) #s(literal -1 binary64)) (/.f64 (/.f64 im re) (neg.f64 re)))
(*.f64 (/.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)))
(*.f64 (/.f64 (/.f64 im re) #s(literal 1 binary64)) (/.f64 (/.f64 im re) re))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (/.f64 (/.f64 im re) re) re))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 (pow.f64 (*.f64 re (/.f64 re im)) #s(literal -1 binary64)) re))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 (/.f64 (/.f64 im re) re) (/.f64 (/.f64 im re) #s(literal 1 binary64)))
(*.f64 (/.f64 (/.f64 im re) re) (/.f64 im re))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 (pow.f64 re #s(literal -2 binary64)) (neg.f64 re)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (/.f64 im (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im)))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3/2 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im)))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3/2 binary64))) (/.f64 im (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 im (*.f64 re re)) (/.f64 im re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (/.f64 (/.f64 im re) re) (neg.f64 re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (pow.f64 (*.f64 re (/.f64 re im)) #s(literal -1 binary64)) (neg.f64 re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (/.f64 im (*.f64 re re)) (neg.f64 re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 (neg.f64 im) (*.f64 re re)))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 im (neg.f64 (*.f64 re re))))
(*.f64 (*.f64 (/.f64 im re) im) (/.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) (neg.f64 (*.f64 re re))))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (*.f64 (/.f64 im re) im))
(*.f64 (pow.f64 re #s(literal -3 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (/.f64 (*.f64 re re) im)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (/.f64 im re) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -3 binary64)))
(*.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (/.f64 im re) (/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re re) im)))
(*.f64 (/.f64 im re) (/.f64 (/.f64 (/.f64 im re) re) #s(literal 1 binary64)))
(*.f64 (/.f64 im re) (/.f64 (pow.f64 (*.f64 re (/.f64 re im)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (/.f64 im re) (/.f64 (/.f64 im (*.f64 re re)) #s(literal 1 binary64)))
(*.f64 (/.f64 im re) (/.f64 (/.f64 im re) re))
(*.f64 (/.f64 im re) (/.f64 im (*.f64 re re)))
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im)) #s(literal -1 binary64))
(pow.f64 (/.f64 im (pow.f64 re #s(literal 3/2 binary64))) #s(literal 2 binary64))
(/.f64 (neg.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3/2 binary64)))) (neg.f64 (pow.f64 re #s(literal 3/2 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) im)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)))
(/.f64 (neg.f64 (*.f64 im #s(literal 1 binary64))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)))
(/.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3/2 binary64))) (pow.f64 re #s(literal 3/2 binary64)))
(/.f64 (neg.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64))) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 (neg.f64 im) im)) (pow.f64 re #s(literal 3 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 (pow.f64 re #s(literal 3 binary64)) im))
(/.f64 (*.f64 im #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal 3 binary64)) im))
(/.f64 (*.f64 (/.f64 im re) im) (*.f64 re re))
(/.f64 (*.f64 (neg.f64 im) im) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im)))
(/.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (neg.f64 (*.f64 re re)))
(/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64)))
(/.f64 (pow.f64 (/.f64 im re) #s(literal 2 binary64)) re)
(/.f64 im (/.f64 (pow.f64 re #s(literal 3 binary64)) im))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (/.f64 (*.f64 im im) (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(exp.f64 (-.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) (*.f64 (log.f64 re) #s(literal 3 binary64))))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (*.f64 (log.f64 re) #s(literal 3 binary64)))))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (*.f64 (neg.f64 (log.f64 re)) #s(literal 3 binary64))))

eval67.0ms (0.9%)

Memory
19.4MiB live, 56.5MiB allocated
Compiler

Compiled 16 457 to 2 338 computations (85.8% saved)

prune40.0ms (0.6%)

Memory
-12.5MiB live, 25.1MiB allocated
Pruning

14 alts after pruning (8 fresh and 6 done)

PrunedKeptTotal
New4056411
Fresh325
Picked325
Done145
Total41214426
Accuracy
99.7%
Counts
426 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.1%
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
54.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
78.5%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
16.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
15.9%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 (*.f64 (/.f64 im re) im) (*.f64 re re)) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))) #s(literal 1/2 binary64))
51.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
25.4%
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64))
36.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
54.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
51.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
27.0%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
27.0%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 543 to 398 computations (26.7% saved)

simplify152.0ms (2.1%)

Memory
1.2MiB live, 44.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
cost-diff0
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
cost-diff6400
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im)
cost-diff12288
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
cost-diff0
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
cost-diff0
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
cost-diff0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
cost-diff0
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
cost-diff0
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
cost-diff0
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
cost-diff320
(*.f64 im #s(literal 1 binary64))
cost-diff0
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
cost-diff0
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
cost-diff0
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
cost-diff320
(*.f64 im #s(literal 1 binary64))
cost-diff0
(sqrt.f64 #s(literal 2 binary64))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
cost-diff12480
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056454
089432
1134426
2238424
3559424
41210406
51977406
62435406
72768406
85789406
08060336
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1 binary64))
im
#s(literal 1 binary64)
#s(literal 1/2 binary64)
(sqrt.f64 re)
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1 binary64))
im
#s(literal 1 binary64)
#s(literal 1/2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
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
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
(*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im)
(fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64)))
#s(literal -1/4 binary64)
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
im
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
(pow.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(literal 1/4 binary64)
#s(literal 2 binary64)
#s(literal 1/2 binary64)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
(*.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 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(exp.f64 (*.f64 (log.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)))
(*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 im #s(literal 1 binary64))
im
im
#s(literal 1 binary64)
#s(literal 1/2 binary64)
(sqrt.f64 re)
re
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (sqrt.f64 (pow.f64 re #s(literal -1 binary64))) (*.f64 im #s(literal 1/2 binary64))))
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (sqrt.f64 (pow.f64 re #s(literal -1 binary64))) (*.f64 im #s(literal 1/2 binary64)))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 im #s(literal 1 binary64))
im
im
#s(literal 1 binary64)
#s(literal 1/2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(sqrt.f64 (pow.f64 re #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) re)
(pow.f64 re #s(literal -1 binary64))
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(-.f64 (hypot.f64 im re) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 im re)
(fma.f64 re re (*.f64 im im))
(fma.f64 im im (*.f64 re re))
re
(*.f64 im im)
im
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im)))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im)) #s(literal 1/4 binary64))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im))
(*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)
(*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re)) im)
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im)
(fma.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) #s(literal -1/4 binary64) (/.f64 im re))
(fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64)))
(fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64)))
#s(literal -1/4 binary64)
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
im
(pow.f64 re #s(literal 3 binary64))
re
#s(literal 3 binary64)
(pow.f64 re #s(literal -1 binary64))
#s(literal -1 binary64)
#s(literal 1/4 binary64)
#s(literal 2 binary64)
#s(literal 1/2 binary64)

localize325.0ms (4.5%)

Memory
12.5MiB live, 177.0MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy2.7506312805363793
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
accuracy2.8919382526217023
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
accuracy7.297896060864657
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
accuracy17.40367654468527
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
accuracy5.41346777148111
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
accuracy7.915108667640224
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
accuracy16.328133892342315
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.0
(*.f64 im #s(literal 1 binary64))
accuracy0.07421875
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
accuracy0.1328125
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
accuracy16.424713524877767
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
accuracy0.0
(*.f64 im #s(literal 1 binary64))
accuracy0.0
(sqrt.f64 re)
accuracy0.1171875
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
accuracy16.424713524877767
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
accuracy0.27181625976844204
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
accuracy2.658289331949517
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
accuracy7.3589504195451365
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy16.05017564473745
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
Samples
80.0ms71×0valid
59.0ms24×2valid
46.0ms121×0invalid
38.0ms26×1valid
16.0ms14×3valid
Compiler

Compiled 829 to 107 computations (87.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 137.0ms
ival-mult: 48.0ms (35.2% of total)
ival-hypot: 33.0ms (24.2% of total)
ival-pow: 15.0ms (11% of total)
ival-sqrt: 9.0ms (6.6% of total)
adjust: 7.0ms (5.1% of total)
ival-log: 5.0ms (3.7% of total)
ival-div: 4.0ms (2.9% of total)
ival-exp: 4.0ms (2.9% of total)
ival-sub: 4.0ms (2.9% of total)
ival-add: 3.0ms (2.2% of total)
ival-pow2: 3.0ms (2.2% of total)
exact: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series66.0ms (0.9%)

Memory
-7.0MiB live, 30.7MiB allocated
Counts
26 → 215
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 im #s(literal 1 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im)
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(sqrt.f64 re)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
Outputs
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(* -1/4 (/ (pow im 3) (pow re 3)))
(/ (+ (* -1/4 (pow im 3)) (* im (pow re 2))) (pow re 3))
(pow (* 2 im) 1/4)
(+ (* -1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)))) (pow (* 2 im) 1/4))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* 1/32 (pow (/ 2 (pow im 7)) 1/4)) (* 5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)))))) (pow (* 2 im) 1/4))
(log im)
(+ (log im) (* -1 (/ re im)))
(+ (log im) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log im) (* re (- (* (pow re 2) (+ (* -3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(sqrt re)
(sqrt (/ 1 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)))))
(/ (pow im 2) (pow re 3))
(/ im (pow re 3))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(/ im re)
(/ (+ im (* -1/4 (/ (pow im 3) (pow re 2)))) re)
(exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (log (* 1/2 (pow im 2))) (log (/ 1 re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
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 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (/ (+ (* -1 im) (* 1/4 (/ (pow im 3) (pow re 2)))) re))
(exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (log 2) (* -1 (log (/ -1 re))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* (sqrt (/ 1 re)) (pow (sqrt -1) 2))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* 1/2 im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* 13/512 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 4))))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* (pow im 2) (+ (* -119/8192 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 6))) (* 13/512 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 4))))))))
(+ (log (/ 1/2 re)) (* 2 (log im)))
(+ (log (/ 1/2 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 2 (log im))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* 3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* (pow im 2) (+ (* -5/96 (/ (pow im 2) (pow re 6))) (* 3/32 (/ 1 (pow re 4))))) (* 1/4 (/ 1 (pow re 2)))))))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2)))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* (pow im 3) (- (/ 1 (* (pow im 2) re)) (* 1/4 (/ 1 (pow re 3)))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2)))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* 1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) (pow im 3))) (* 1/2 (/ (+ (* -1 (pow re 2)) (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 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (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 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (pow im 3) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re)))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (/ re im))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 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
32.0ms
re
@inf
((exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2)) (* (* 1/2 (sqrt 2)) (exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2))) (* 1/2 (sqrt 2)) (sqrt 2) (* im 1) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* (* im 1) 1/2) (sqrt re)) (* (* im 1) 1/2) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* im 1) 1/2) (sqrt (/ 1 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) (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (* (+ (* -1/4 (* (/ im (pow re 3)) im)) (pow re -1)) im) (* (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) 1/2) (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) (- (sqrt (+ (* re re) (* im im))) re) (log (- (sqrt (+ (* re re) (* im im))) re)) (sqrt re) (sqrt (/ 1 re)) (sqrt (+ (* re re) (* im im))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (/ im (pow re 3)) im) (/ im (pow re 3)))
9.0ms
re
@-inf
((exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2)) (* (* 1/2 (sqrt 2)) (exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2))) (* 1/2 (sqrt 2)) (sqrt 2) (* im 1) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* (* im 1) 1/2) (sqrt re)) (* (* im 1) 1/2) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* im 1) 1/2) (sqrt (/ 1 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) (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (* (+ (* -1/4 (* (/ im (pow re 3)) im)) (pow re -1)) im) (* (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) 1/2) (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) (- (sqrt (+ (* re re) (* im im))) re) (log (- (sqrt (+ (* re re) (* im im))) re)) (sqrt re) (sqrt (/ 1 re)) (sqrt (+ (* re re) (* im im))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (/ im (pow re 3)) im) (/ im (pow re 3)))
6.0ms
im
@0
((exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2)) (* (* 1/2 (sqrt 2)) (exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2))) (* 1/2 (sqrt 2)) (sqrt 2) (* im 1) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* (* im 1) 1/2) (sqrt re)) (* (* im 1) 1/2) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* im 1) 1/2) (sqrt (/ 1 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) (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (* (+ (* -1/4 (* (/ im (pow re 3)) im)) (pow re -1)) im) (* (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) 1/2) (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) (- (sqrt (+ (* re re) (* im im))) re) (log (- (sqrt (+ (* re re) (* im im))) re)) (sqrt re) (sqrt (/ 1 re)) (sqrt (+ (* re re) (* im im))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (/ im (pow re 3)) im) (/ im (pow re 3)))
5.0ms
im
@inf
((exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2)) (* (* 1/2 (sqrt 2)) (exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2))) (* 1/2 (sqrt 2)) (sqrt 2) (* im 1) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* (* im 1) 1/2) (sqrt re)) (* (* im 1) 1/2) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* im 1) 1/2) (sqrt (/ 1 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) (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (* (+ (* -1/4 (* (/ im (pow re 3)) im)) (pow re -1)) im) (* (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) 1/2) (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) (- (sqrt (+ (* re re) (* im im))) re) (log (- (sqrt (+ (* re re) (* im im))) re)) (sqrt re) (sqrt (/ 1 re)) (sqrt (+ (* re re) (* im im))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (/ im (pow re 3)) im) (/ im (pow re 3)))
5.0ms
im
@-inf
((exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2)) (* (* 1/2 (sqrt 2)) (exp (* (log (- (sqrt (+ (* re re) (* im im))) re)) 1/2))) (* 1/2 (sqrt 2)) (sqrt 2) (* im 1) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* (* im 1) 1/2) (sqrt re)) (* (* im 1) 1/2) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* im 1) 1/2) (sqrt (/ 1 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) (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (* (+ (* -1/4 (* (/ im (pow re 3)) im)) (pow re -1)) im) (* (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) 1/2) (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) (- (sqrt (+ (* re re) (* im im))) re) (log (- (sqrt (+ (* re re) (* im im))) re)) (sqrt re) (sqrt (/ 1 re)) (sqrt (+ (* re re) (* im im))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (* (/ im (pow re 3)) im) (/ im (pow re 3)))

simplify231.0ms (3.2%)

Memory
3.5MiB live, 118.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011356218
136195777
083605494
Stop Event
iter limit
node limit
Counts
215 → 213
Calls
Call 1
Inputs
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (sqrt im) (* re (+ (* -1/2 (sqrt (/ 1 im))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* 1/2 (* im (sqrt (/ 1 re))))
(* (sqrt im) (sqrt 2))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* -2 re) (* 2 im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(* -1/4 (/ (pow im 3) (pow re 3)))
(/ (+ (* -1/4 (pow im 3)) (* im (pow re 2))) (pow re 3))
(pow (* 2 im) 1/4)
(+ (* -1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)))) (pow (* 2 im) 1/4))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* 1/32 (pow (/ 2 (pow im 7)) 1/4)) (* 5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)))))) (pow (* 2 im) 1/4))
(log im)
(+ (log im) (* -1 (/ re im)))
(+ (log im) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log im) (* re (- (* (pow re 2) (+ (* -3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(sqrt re)
(sqrt (/ 1 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)))))
(/ (pow im 2) (pow re 3))
(/ im (pow re 3))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(/ (pow im 2) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* im (sqrt (/ 1 re)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(/ im re)
(/ (+ im (* -1/4 (/ (pow im 3) (pow re 2)))) re)
(exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (log (* 1/2 (pow im 2))) (log (/ 1 re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
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 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(* -4 re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (/ (+ (* -1 im) (* 1/4 (/ (pow im 3) (pow re 2)))) re))
(exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (log 2) (* -1 (log (/ -1 re))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(* (sqrt (/ 1 re)) (pow (sqrt -1) 2))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* 1/2 im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* 13/512 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 4))))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* (pow im 2) (+ (* -119/8192 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 6))) (* 13/512 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 4))))))))
(+ (log (/ 1/2 re)) (* 2 (log im)))
(+ (log (/ 1/2 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 2 (log im))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* 3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* (pow im 2) (+ (* -5/96 (/ (pow im 2) (pow re 6))) (* 3/32 (/ 1 (pow re 4))))) (* 1/4 (/ 1 (pow re 2)))))))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2)))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* (pow im 3) (- (/ 1 (* (pow im 2) re)) (* 1/4 (/ 1 (pow re 3)))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2)))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* 1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) (pow im 3))) (* 1/2 (/ (+ (* -1 (pow re 2)) (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 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (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 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(* -1 im)
(* -1 (* im (+ 1 (/ re im))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (pow im 3) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re)))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (/ re im))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 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
(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/2 (sqrt (/ 1 im))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/8 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(+ (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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/8 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/2 binary64))) re (sqrt.f64 im))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (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 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/4 binary64))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/32 binary64))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64))))
(* 1/2 (* im (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #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 (fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal 1/8 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64))) re (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/2 binary64))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal -2 binary64)) re (*.f64 #s(literal 2 binary64) im))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal -1 binary64)) re im)
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal -1 binary64)) re im)
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (/.f64 (+.f64 (/.f64 re im) (*.f64 re (/.f64 (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 2 binary64)) (/.f64 (+.f64 (/.f64 re im) (*.f64 re (/.f64 (/.f64 #s(literal -1 binary64) im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) re (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* -1/4 (/ (pow im 3) (pow re 3)))
(/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal 3 binary64)))
(/ (+ (* -1/4 (pow im 3)) (* im (pow re 2))) (pow re 3))
(/.f64 (fma.f64 (*.f64 re re) im (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 re #s(literal 3 binary64)))
(pow (* 2 im) 1/4)
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64))
(+ (* -1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal -1/4 binary64)) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)))) (pow (* 2 im) 1/4))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 7 binary64))) #s(literal 1/4 binary64)) re) #s(literal 1/32 binary64) (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal -1/4 binary64))) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(+ (* re (+ (* -1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* 1/32 (pow (/ 2 (pow im 7)) 1/4)) (* 5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)))))) (pow (* 2 im) 1/4))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 11 binary64))) #s(literal 1/4 binary64)) re) #s(literal 5/128 binary64) (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 7 binary64))) #s(literal 1/4 binary64)) #s(literal 1/32 binary64))) re (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal -1/4 binary64))) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(log im)
(log.f64 im)
(+ (log im) (* -1 (/ re im)))
(-.f64 (log.f64 im) (/.f64 re im))
(+ (log im) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal -1 binary64) im)) re (log.f64 im))
(+ (log im) (* re (- (* (pow re 2) (+ (* -3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal -3/40 binary64) (/.f64 #s(literal 1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal -1 binary64) im)) re (log.f64 im))
(sqrt re)
(sqrt.f64 re)
(sqrt (/ 1 re))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64) 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 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(/ (pow im 2) (pow re 3))
(/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64)))
(/ im (pow re 3))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/16 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 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(fma.f64 (/.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (/.f64 (*.f64 #s(literal -1/16 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 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/512 binary64) (/.f64 (pow.f64 im #s(literal 5 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))) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 #s(literal 1/64 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/1024 binary64) (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (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 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/512 binary64) (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (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 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (-.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 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))) re)
(* im (sqrt (/ 1 re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 5 binary64))) #s(literal 7/128 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
(/ im re)
(/.f64 im re)
(/ (+ im (* -1/4 (/ (pow im 3) (pow re 2)))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) im) re)
(exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re)))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))) (*.f64 im im)) (*.f64 re re)) #s(literal -1/16 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))) (*.f64 im im)) (*.f64 re re)) #s(literal -1/16 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ 1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(fma.f64 (/.f64 #s(literal -1/16 binary64) re) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))) (*.f64 im im)) re) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/1536 binary64) (*.f64 im im)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (fma.f64 (fma.f64 (/.f64 #s(literal -720 binary64) im) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) im) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/4 binary64))) #s(literal 1/2880 binary64) (*.f64 #s(literal -1/24576 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 (*.f64 im im)) (log.f64 re)))))
(+ (log (* 1/2 (pow im 2))) (log (/ 1 re)))
(-.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 re))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (-.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (pow.f64 re #s(literal 4 binary64)))) (log.f64 re)) (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ 1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal -720 binary64) im) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) im) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/4 binary64))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (pow.f64 re #s(literal 4 binary64))))) (-.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 re)))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal 4 binary64))))) re re)
(* -1 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(*.f64 (neg.f64 (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* re (+ (* -1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 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 3 binary64)))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))))) (*.f64 (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/64 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/8 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* 1/2 (* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/32 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* -1 (* re (+ 4 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) (neg.f64 re))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (neg.f64 re))
(* -1 (* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2)))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* -2 (* (sqrt re) (sqrt -1)))
(*.f64 (*.f64 #s(literal -2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal -1 binary64)) (/.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -3/64 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im)) (sqrt.f64 re)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1 im) (* 1/4 (/ (pow im 3) (pow re 2)))) re))
(/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 3 binary64)) re) (neg.f64 im)) (neg.f64 re))
(exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 im im)) (*.f64 re re)) #s(literal 1/16 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 im im)) (*.f64 re re)) #s(literal 1/16 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ -1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(fma.f64 (/.f64 #s(literal 1/16 binary64) re) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 im im)) re) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/1536 binary64) (*.f64 im im)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) #s(literal 1/2880 binary64) (*.f64 #s(literal 1/24576 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 4 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(+ (log 2) (* -1 (log (/ -1 re))))
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64))) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (log 2) (+ (* -1 (log (/ -1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(+.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64))) (pow.f64 re #s(literal 4 binary64))))) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(* (sqrt (/ 1 re)) (pow (sqrt -1) 2))
(*.f64 #s(literal -1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 1 binary64)) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 1 binary64))) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) (pow.f64 re #s(literal 4 binary64))))) re re))
(* im (+ (* -1/16 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 1/2))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) im)
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/2 binary64) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) im)
(* im (+ (* (sqrt (/ 1 re)) (sqrt 1/2)) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (/.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1/16 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) im)
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/4 binary64))) (*.f64 im im))) (*.f64 im im) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))) im)
(* 1/2 im)
(*.f64 #s(literal 1/2 binary64) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/16 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/256 binary64) (*.f64 (pow.f64 re #s(literal 5 binary64)) #s(literal 1/2 binary64)))) (*.f64 re re)) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 im im)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 re)) #s(literal -1/2 binary64))) (*.f64 im im))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))) im)
(* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im 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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/64 (/ (pow im 2) (pow re 7))) (* 1/8 (/ 1 (pow re 5))))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re)))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) #s(literal -5/64 binary64) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im 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))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -5/128 binary64) (/.f64 (*.f64 im im) (pow.f64 re #s(literal 7 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -33/1024 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 13 binary64)))) (*.f64 #s(literal 7/128 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/8 binary64))) (*.f64 im im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) im)
(* im (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(fma.f64 im (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (pow.f64 re #s(literal 3 binary64))) (/.f64 im re))
(exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 2))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) (*.f64 im im)) (*.f64 re re)) #s(literal -1/16 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* 13/512 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 4))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) (*.f64 im im)) (pow.f64 re #s(literal 4 binary64))) #s(literal 13/512 binary64) (*.f64 (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) (*.f64 re re)) #s(literal -1/16 binary64))) (*.f64 im im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))))
(+ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (* (pow im 2) (+ (* -1/16 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 2))) (* (pow im 2) (+ (* -119/8192 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im)))))) (pow re 6))) (* 13/512 (/ (exp (* 1/4 (+ (log (/ 1 re)) (* 2 (log im))))) (pow re 4))))))))
(fma.f64 (fma.f64 (/.f64 #s(literal -1/16 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) re) (*.f64 (fma.f64 (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) (pow.f64 re #s(literal 4 binary64))) #s(literal 13/512 binary64) (*.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))) (*.f64 im im)) (pow.f64 re #s(literal 6 binary64))) #s(literal -119/8192 binary64))) (*.f64 im im))) (*.f64 im im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re)))))
(+ (log (/ 1/2 re)) (* 2 (log im)))
(fma.f64 (log.f64 im) #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re)))
(+ (log (/ 1/2 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 2 (log im))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (fma.f64 (log.f64 im) #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* 3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal 3/32 binary64) (/.f64 #s(literal -1/4 binary64) (*.f64 re re))) (*.f64 im im) (fma.f64 (log.f64 im) #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(+ (log (/ 1/2 re)) (+ (* 2 (log im)) (* (pow im 2) (- (* (pow im 2) (+ (* -5/96 (/ (pow im 2) (pow re 6))) (* 3/32 (/ 1 (pow re 4))))) (* 1/4 (/ 1 (pow re 2)))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 6 binary64))) #s(literal -5/96 binary64) (/.f64 #s(literal 3/32 binary64) (pow.f64 re #s(literal 4 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/4 binary64) (*.f64 re re))) (*.f64 im im) (fma.f64 (log.f64 im) #s(literal 2 binary64) (log.f64 (/.f64 #s(literal 1/2 binary64) re))))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im 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)
(* 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/2 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))))))
(*.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/2 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2)))))))
(*.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)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (*.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/8 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.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 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.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/4 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.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/8 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (/.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (*.f64 (/.f64 re im) (/.f64 re im)) #s(literal 1/2 binary64) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (/.f64 re im)) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (neg.f64 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 (*.f64 (*.f64 re re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal -1/2 binary64) (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/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))) im)
(* (pow im 3) (- (/ 1 (* (pow im 2) re)) (* 1/4 (/ 1 (pow re 3)))))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) re)) (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 3 binary64)))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(fma.f64 (*.f64 re (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) im)) #s(literal -1/4 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(fma.f64 (*.f64 re (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) im)) #s(literal -1/4 binary64) (fma.f64 (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)) im) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im)))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(fma.f64 (*.f64 re (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) im)) #s(literal -1/4 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal 0 binary64) re) #s(literal -1/32 binary64) (fma.f64 #s(literal -1/384 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 1/24 binary64) (pow.f64 re #s(literal 3 binary64))))) (pow.f64 im #s(literal 3 binary64))) (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)) (*.f64 im im))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im)))))
(* -1 (log (/ 1 im)))
(log.f64 im)
(+ (* -1 (log (/ 1 im))) (* -1 (/ re im)))
(-.f64 (log.f64 im) (/.f64 re im))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2)))))
(+.f64 (-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im)) (log.f64 im))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* 1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) (pow im 3))) (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))))))
(+.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/6 binary64) (-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im))) (log.f64 im))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #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 re) im) (/.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) im 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 (*.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)))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.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 -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))))) (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 (*.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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 im))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (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 (*.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))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (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 (*.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)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/16 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))) (neg.f64 im))
(* -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 (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/2 binary64) (*.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)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #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 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) 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 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) 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)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (*.f64 re re) im) #s(literal -1/2 binary64) (neg.f64 re)) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) im)) (neg.f64 im))
(* -1 (* im (+ (* -1 (* (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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (/.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))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (-.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 #s(literal 1/2 binary64) (sqrt.f64 im)) (fma.f64 (/.f64 (*.f64 re re) #s(literal 2 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 (pow.f64 im #s(literal 3 binary64))))) (/.f64 (*.f64 (*.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 (* (pow im 3) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re)))))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) re))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(fma.f64 (*.f64 re (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) im)) #s(literal 1/4 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64))) (neg.f64 im))) im))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* -1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (+ (* -1/384 (pow re 3)) (* 1/24 (+ (* -2 (pow re 3)) (* 3 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* -1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (*.f64 #s(literal 0 binary64) re) #s(literal -1/32 binary64) (fma.f64 #s(literal -1/384 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 1/24 binary64) (pow.f64 re #s(literal 3 binary64)))))) (neg.f64 im))) (neg.f64 im))) im))
(* -1 (log (/ -1 im)))
(neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (/ re im))
(-.f64 (/.f64 re im) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(-.f64 (/.f64 (-.f64 (/.f64 #s(literal 0 binary64) im) re) (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/6 (/ (+ (* -2 (pow re 3)) (* 3 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 2)) (pow re 2)))) im))) im)))
(-.f64 (/.f64 (neg.f64 (+.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal -1/6 binary64) #s(literal 0 binary64)) im) re)) (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #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 re re) im) (/.f64 #s(literal 1/2 binary64) im) #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 re re) im) (/.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) im im))

rewrite169.0ms (2.3%)

Memory
18.1MiB live, 93.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056357
089331
1258326
21279325
08200265
Stop Event
iter limit
node limit
iter limit
Counts
26 → 514
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 im #s(literal 1 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 re))
(*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 im #s(literal 1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im)
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(sqrt.f64 re)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) (pow.f64 re #s(literal -1 binary64))) im) im))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
Outputs
(*.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 (*.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 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(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 (exp.f64 #s(literal 1/2 binary64))) (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(exp.f64 (*.f64 #s(literal 1/2 binary64) (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 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 (*.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 (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 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1 binary64) im)
(*.f64 im #s(literal 1 binary64))
(pow.f64 im #s(literal 1 binary64))
(exp.f64 (*.f64 (log.f64 im) #s(literal 1 binary64)))
im
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 im (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 re)))))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 im (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 re)))))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) im) (sqrt.f64 re)))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #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 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (neg.f64 re)) (*.f64 #s(literal 2 binary64) (neg.f64 re))) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (neg.f64 re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (hypot.f64 im re) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re)))
(fma.f64 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(+.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (neg.f64 re)))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (hypot.f64 im re) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) (neg.f64 re))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 im re) (neg.f64 re))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (fma.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (neg.f64 re) (hypot.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 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 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (*.f64 (+.f64 (hypot.f64 im re) re) (*.f64 re re))) (*.f64 (+.f64 (hypot.f64 im re) re) (+.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 re))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (neg.f64 re))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) re)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (hypot.f64 im re) (neg.f64 re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 im re) (neg.f64 re))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) (neg.f64 re)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 im re) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 im re) (neg.f64 re)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 im re) (neg.f64 re)) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 re re) (*.f64 (hypot.f64 im re) (neg.f64 re)))) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re)))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 re im)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) (neg.f64 re))) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) (neg.f64 re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re)))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(-.f64 (hypot.f64 im re) re)
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 im re) re))))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 im re) re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(+.f64 (neg.f64 re) (hypot.f64 im re))
(+.f64 (hypot.f64 im re) (neg.f64 re))
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 3/8 binary64)) #s(literal 1 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 3/8 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)) (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 3/8 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 3/8 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/4 binary64)))
(pow.f64 (*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64))) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)) #s(literal 4 binary64))
(pow.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)))
(exp.f64 (*.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) 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 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))) im) (pow.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))) im) (pow.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 im (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64))))) (pow.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)) #s(literal -1 binary64)))
(*.f64 (*.f64 im (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64)))) (pow.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) #s(literal 1 binary64)) im)
(*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im)
(*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im))
(*.f64 im (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) (-.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (*.f64 (pow.f64 re #s(literal -1 binary64)) im)) (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) (*.f64 (pow.f64 re #s(literal -1 binary64)) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im)) (*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) #s(literal 3 binary64)) (pow.f64 (/.f64 im re) #s(literal 3 binary64))) (fma.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) (-.f64 (*.f64 (/.f64 im re) (/.f64 im re)) (*.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) (/.f64 im re)))))
(/.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal 3 binary64)) (pow.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 im re) (/.f64 im re) (-.f64 (*.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)))) (*.f64 (/.f64 im re) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))) im)) (neg.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))) im)) (neg.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))))) (neg.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))))) (neg.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64)))))
(/.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))) im) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)))
(/.f64 (*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))) im) (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))))
(/.f64 (*.f64 im (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64))))) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)))
(/.f64 (*.f64 im (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64)))) (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)) (*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))) (*.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) re)) (*.f64 im (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (neg.f64 (pow.f64 re #s(literal -2 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64))) (*.f64 im (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal -9 binary64))) #s(literal -1/64 binary64) (pow.f64 re #s(literal -3 binary64))))))
(/.f64 im (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64)))))
(fma.f64 (/.f64 im re) #s(literal 1 binary64) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))))
(fma.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im (*.f64 (pow.f64 re #s(literal -1 binary64)) im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im #s(literal 1 binary64)) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) im (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im))
(fma.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) (/.f64 im re))
(fma.f64 im (pow.f64 re #s(literal -1 binary64)) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im) (*.f64 (pow.f64 re #s(literal -1 binary64)) im))
(+.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (*.f64 (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64)) im))
(+.f64 (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))) (/.f64 im re))
(+.f64 (/.f64 im re) (*.f64 im (*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 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 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))))
(*.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)) (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64)) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/8 binary64)) #s(literal 2 binary64))
(pow.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 1 binary64))
(pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64))
(exp.f64 (*.f64 (*.f64 #s(literal 1/8 binary64) (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 2 binary64))) #s(literal 1/8 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))) #s(literal 1/4 binary64)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(exp.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 re #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 re) #s(literal 1 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))
(/.f64 (sqrt.f64 (neg.f64 re)) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64))
(/.f64 (sqrt.f64 re) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal -1/2 binary64)))
(sqrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 re))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal -1 binary64) re)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 re #s(literal -1/2 binary64)))
(pow.f64 (pow.f64 re #s(literal -1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 re #s(literal -2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64))
(pow.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 re) #s(literal -1 binary64))
(pow.f64 (*.f64 re re) #s(literal -1/4 binary64))
(pow.f64 re #s(literal -1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (sqrt.f64 (neg.f64 re))))
(/.f64 (fabs.f64 (sqrt.f64 #s(literal -1 binary64))) (fabs.f64 (sqrt.f64 (neg.f64 re))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (fabs.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 #s(literal 1 binary64) (fabs.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (sqrt.f64 re))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(sqrt.f64 (pow.f64 re #s(literal -1 binary64)))
(fabs.f64 (neg.f64 (pow.f64 re #s(literal -1/2 binary64))))
(fabs.f64 (pow.f64 re #s(literal -1/2 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 re)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 re) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (neg.f64 (log.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)))
(*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #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 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 re im)) #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 (*.f64 (+.f64 im re) (-.f64 re 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 (hypot.f64 im re) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (+.f64 im re) (-.f64 im 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 im re) (-.f64 re im)))))
(/.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 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.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 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(fabs.f64 (hypot.f64 im re))
(hypot.f64 (exp.f64 (log.f64 im)) (neg.f64 re))
(hypot.f64 (exp.f64 (log.f64 im)) re)
(hypot.f64 (neg.f64 re) (exp.f64 (log.f64 im)))
(hypot.f64 (neg.f64 re) im)
(hypot.f64 im (neg.f64 re))
(hypot.f64 im re)
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re im)
(exp.f64 (log.f64 (hypot.f64 im re)))
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))
(exp.f64 (log.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/4 binary64) (pow.f64 re #s(literal -1 binary64))) im) im))))
(*.f64 (/.f64 im (*.f64 (pow.f64 re #s(literal 3/2 binary64)) #s(literal 1 binary64))) (*.f64 im (pow.f64 re #s(literal -3/2 binary64))))
(*.f64 (/.f64 im (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im)) (pow.f64 re #s(literal -3/2 binary64)))
(*.f64 (/.f64 im (*.f64 (/.f64 re im) re)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im (/.f64 re im)) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 im (neg.f64 (*.f64 re re))))
(*.f64 (/.f64 (neg.f64 im) (*.f64 re re)) (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))) (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 im (neg.f64 (*.f64 re re))) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im (neg.f64 re)) (/.f64 (neg.f64 im) (*.f64 re re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (*.f64 (neg.f64 im) (pow.f64 re #s(literal -3 binary64))))
(*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -3/2 binary64))) (pow.f64 re #s(literal -3/2 binary64)))
(*.f64 (*.f64 (/.f64 im re) (/.f64 im re)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 im im) re) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (*.f64 im (neg.f64 im)) (pow.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) im)
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64))) (/.f64 im (*.f64 (pow.f64 re #s(literal 3/2 binary64)) #s(literal 1 binary64))))
(*.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64))) (*.f64 im (pow.f64 re #s(literal -3/2 binary64))))
(*.f64 (*.f64 im (pow.f64 re #s(literal -2 binary64))) (/.f64 im re))
(*.f64 (/.f64 im re) (*.f64 im (pow.f64 re #s(literal -2 binary64))))
(*.f64 (neg.f64 (*.f64 im im)) (pow.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (/.f64 im (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im)))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (*.f64 (*.f64 im im) (pow.f64 re #s(literal -3/2 binary64))))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 im (/.f64 re im)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 re #s(literal -3 binary64)) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im) #s(literal 1 binary64))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im)
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 im (*.f64 (/.f64 re im) re)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (/.f64 im re) (/.f64 im re)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im (pow.f64 re #s(literal 3 binary64))) im))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -3 binary64)))
(*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im)) #s(literal -1 binary64))
(pow.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64))) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -3/2 binary64)))) (neg.f64 (pow.f64 re #s(literal 3/2 binary64))))
(/.f64 (neg.f64 (*.f64 (/.f64 im re) (/.f64 im re))) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 (*.f64 im im) re)) (neg.f64 (*.f64 re re)))
(/.f64 (neg.f64 (*.f64 im (neg.f64 im))) (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 im) im)) (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(/.f64 (neg.f64 (neg.f64 (*.f64 im im))) (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(/.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -3/2 binary64))) (pow.f64 re #s(literal 3/2 binary64)))
(/.f64 (*.f64 (/.f64 im re) (/.f64 im re)) re)
(/.f64 (/.f64 (*.f64 im im) re) (*.f64 re re))
(/.f64 (*.f64 im (neg.f64 im)) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(/.f64 (*.f64 (neg.f64 im) im) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(/.f64 (neg.f64 (*.f64 im im)) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(/.f64 (neg.f64 im) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3/2 binary64)) (*.f64 (*.f64 im im) (pow.f64 re #s(literal -3/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (/.f64 im re) (/.f64 im re))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re re) (/.f64 (*.f64 im im) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (*.f64 im (neg.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) (*.f64 (neg.f64 im) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) im))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 im im)))
(/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64)))
(/.f64 im (/.f64 (pow.f64 re #s(literal 3 binary64)) im))
(exp.f64 (-.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) (*.f64 (log.f64 re) #s(literal 3 binary64))))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (*.f64 (log.f64 re) #s(literal 3 binary64)))))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (*.f64 (neg.f64 (log.f64 re)) #s(literal 3 binary64))))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (pow.f64 re #s(literal -3 binary64)))
(*.f64 (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))))
(*.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))) (/.f64 (neg.f64 im) (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re))))
(*.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 re re))) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (neg.f64 im) (*.f64 re re)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))))
(*.f64 (/.f64 im (neg.f64 (pow.f64 re #s(literal 3/2 binary64)))) (/.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3/2 binary64))))
(*.f64 (/.f64 im (neg.f64 (*.f64 re re))) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) (*.f64 re re)) (/.f64 im (neg.f64 re)))
(*.f64 (/.f64 im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (*.f64 re re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 (*.f64 (pow.f64 re #s(literal 3/2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 re #s(literal 3/2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 re im) #s(literal -1 binary64)) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 re im) re) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 im) (*.f64 re re)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (neg.f64 (*.f64 re re))))
(*.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64))) (pow.f64 re #s(literal -3/2 binary64)))
(*.f64 (*.f64 im (pow.f64 re #s(literal -2 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (pow.f64 re #s(literal -2 binary64)))
(*.f64 (neg.f64 (neg.f64 im)) (pow.f64 re #s(literal -3 binary64)))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3/2 binary64)) im) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -3/2 binary64)) (*.f64 im (pow.f64 re #s(literal -3/2 binary64))))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (pow.f64 (/.f64 re im) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -2 binary64)) (/.f64 im re))
(*.f64 (pow.f64 re #s(literal -3 binary64)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -3 binary64)) im)
(*.f64 (neg.f64 im) (pow.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im))))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) (pow.f64 re #s(literal -3 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (*.f64 (/.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im (pow.f64 re #s(literal -2 binary64))))
(*.f64 #s(literal 1 binary64) (/.f64 im (pow.f64 re #s(literal 3 binary64))))
(*.f64 im (pow.f64 re #s(literal -3 binary64)))
(pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64)))) (neg.f64 (pow.f64 re #s(literal 3/2 binary64))))
(/.f64 (neg.f64 (*.f64 im (pow.f64 re #s(literal -2 binary64)))) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 im re)) (neg.f64 (*.f64 re re)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 im))) (neg.f64 (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64)))))
(/.f64 (*.f64 im (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64))) (*.f64 re (neg.f64 re)))
(/.f64 (*.f64 im (/.f64 #s(literal -1 binary64) re)) (*.f64 re (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -1 binary64)) im) (*.f64 (neg.f64 re) re))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) im) (*.f64 (neg.f64 re) re))
(/.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) im) (*.f64 re re))
(/.f64 (*.f64 im (pow.f64 re #s(literal -3/2 binary64))) (pow.f64 re #s(literal 3/2 binary64)))
(/.f64 (*.f64 im (pow.f64 re #s(literal -2 binary64))) (neg.f64 (neg.f64 re)))
(/.f64 (*.f64 im (pow.f64 re #s(literal -2 binary64))) re)
(/.f64 (/.f64 im re) (*.f64 re re))
(/.f64 (neg.f64 (neg.f64 im)) (neg.f64 (pow.f64 (neg.f64 re) #s(literal 3 binary64))))
(/.f64 (neg.f64 im) (*.f64 re (*.f64 (neg.f64 re) re)))
(/.f64 (neg.f64 im) (*.f64 re (*.f64 re (neg.f64 re))))
(/.f64 (neg.f64 im) (*.f64 (*.f64 (neg.f64 re) re) re))
(/.f64 (neg.f64 im) (*.f64 (*.f64 re (neg.f64 re)) re))
(/.f64 (neg.f64 im) (pow.f64 (neg.f64 re) #s(literal 3 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3/2 binary64)) (*.f64 im (pow.f64 re #s(literal -3/2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im (pow.f64 re #s(literal -2 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 3 binary64)) im))
(/.f64 im (*.f64 (*.f64 re re) (neg.f64 (neg.f64 re))))
(/.f64 im (*.f64 (neg.f64 (neg.f64 re)) (*.f64 re re)))
(/.f64 im (pow.f64 re #s(literal 3 binary64)))
(neg.f64 (*.f64 (neg.f64 im) (pow.f64 re #s(literal -3 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (*.f64 (neg.f64 im) (pow.f64 re #s(literal -3 binary64))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) (pow.f64 re #s(literal -3 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im)) #s(literal -1 binary64)))

eval152.0ms (2.1%)

Memory
-19.1MiB live, 98.4MiB allocated
Compiler

Compiled 25 371 to 4 309 computations (83% saved)

prune33.0ms (0.5%)

Memory
0.8MiB live, 40.0MiB allocated
Pruning

17 alts after pruning (9 fresh and 8 done)

PrunedKeptTotal
New6926698
Fresh033
Picked325
Done066
Total69517712
Accuracy
100.0%
Counts
712 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
18.1%
(*.f64 (pow.f64 (pow.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 (neg.f64 im) (*.f64 (*.f64 (neg.f64 re) re) re)) im) (pow.f64 re #s(literal -1 binary64))) im) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
50.2%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
54.0%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
50.4%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
23.9%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (exp.f64 (*.f64 #s(approx (log (- (sqrt (+ (* re re) (* im im))) re)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))))
78.5%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
16.4%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
15.9%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 (*.f64 (/.f64 im re) im) (*.f64 re re)) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)))) #s(literal 1/2 binary64))
51.8%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
25.4%
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64))
27.0%
(*.f64 #s(approx (pow (pow (* 2 (- (sqrt (+ (* re re) (* im im))) re)) 1/4) 2) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)) #s(literal 1/2 binary64))
36.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
54.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
51.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
25.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
27.0%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))
26.9%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
Compiler

Compiled 1 311 to 514 computations (60.8% saved)

regimes82.0ms (1.1%)

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

7 calls:

29.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
9.0ms
im
9.0ms
re
8.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
8.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
87.8%2re
78.5%1im
90.0%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))))
90.0%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
89.6%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
89.6%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
78.5%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes55.0ms (0.8%)

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

7 calls:

17.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
im
6.0ms
re
6.0ms
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
6.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
68.1%5im
64.9%3(*.f64 im im)
80.4%4re
74.7%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
74.7%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
74.9%3(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
74.9%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes25.0ms (0.3%)

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

1 calls:

5.0ms
re
Results
AccuracySegmentsBranch
78.7%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes5.0ms (0.1%)

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

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
78.6%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes3.0ms (0%)

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

1 calls:

2.0ms
re
Results
AccuracySegmentsBranch
78.6%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes10.0ms (0.1%)

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

5 calls:

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

Compiled 51 to 40 computations (21.6% saved)

regimes8.0ms (0.1%)

Memory
21.8MiB live, 21.8MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

7 calls:

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

Compiled 55 to 45 computations (18.2% saved)

bsearch1.0ms (0%)

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

Compiled 18 to 17 computations (5.6% saved)

bsearch54.0ms (0.7%)

Memory
-22.0MiB live, 57.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
1.1296691842103304e-8
1.0290439854778664e-6
16.0ms
-2.4494155269705577e-45
-7.707216707780598e-59
8.0ms
-1.5400387595928735e+99
-8.915759008806031e+98
Samples
19.0ms289×0valid
10.0ms15×1valid
5.0ms26×2valid
2.0ms3valid
Compiler

Compiled 843 to 667 computations (20.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
ival-hypot: 15.0ms (58% of total)
ival-mult: 4.0ms (15.5% of total)
ival-sqrt: 3.0ms (11.6% of total)
ival-sub: 2.0ms (7.7% of total)
adjust: 1.0ms (3.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch15.0ms (0.2%)

Memory
17.3MiB live, 17.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.1296691842103304e-8
1.0290439854778664e-6
12.0ms
-2.4494155269705577e-45
-7.707216707780598e-59
Samples
7.0ms112×0valid
Compiler

Compiled 875 to 655 computations (25.1% saved)

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

bsearch3.0ms (0%)

Memory
4.6MiB live, 4.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.1296691842103304e-8
1.0290439854778664e-6
1.0ms
-2.4494155269705577e-45
-7.707216707780598e-59
Compiler

Compiled 685 to 555 computations (19% saved)

bsearch3.0ms (0%)

Memory
4.9MiB live, 4.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
1.1296691842103304e-8
1.0290439854778664e-6
1.0ms
-2.4494155269705577e-45
-7.707216707780598e-59
Compiler

Compiled 685 to 555 computations (19% saved)

bsearch12.0ms (0.2%)

Memory
-20.6MiB live, 17.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
10.0ms
-2.4494155269705577e-45
-7.707216707780598e-59
Samples
5.0ms80×0valid
Compiler

Compiled 398 to 334 computations (16.1% saved)

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

simplify85.0ms (1.2%)

Memory
2.2MiB live, 39.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
089437
1122437
2187437
3346437
4609437
5895433
62064433
73431433
84432433
95611433
106980433
Stop Event
node limit
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -1500000000000000072421058970283103843240668955179764874527370109965663847120867402594627628008734720 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal -8282095616148677/27606985387162255149739023449108101809804435888681546220650096895197184 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 re #s(literal -8627182933488205/53919893334301279589334030174039261347274288845081144962207220498432 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
Outputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -1500000000000000072421058970283103843240668955179764874527370109965663847120867402594627628008734720 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal -8282095616148677/27606985387162255149739023449108101809804435888681546220650096895197184 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) #s(approx (* (neg re) (+ (* (/ im re) (/ im re)) 4)) (fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 #s(literal -4 binary64) re))))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 im #s(literal 1/2 binary64)) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -5931188266773141/13479973333575319897333507543509815336818572211270286240551805124608 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (if (<=.f64 re #s(literal 7366891713276647/9444732965739290427392 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 re #s(literal -8627182933488205/53919893334301279589334030174039261347274288845081144962207220498432 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))

soundness960.0ms (13.2%)

Memory
21.6MiB live, 858.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060433
091425
1292420
21807407
08114342
01265
02065
15665
237465
3420865
0840738
05513021
118142867
264042838
081302681
05692818
118222657
262812548
081432420
056357
089331
1258326
21279325
08200265
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 1 378 to 658 computations (52.2% saved)

preprocess114.0ms (1.6%)

Memory
-23.0MiB live, 135.5MiB allocated
Remove

(abs im)

Compiler

Compiled 1 000 to 272 computations (72.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...