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

Time bar (total: 6.6s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze142.0ms (2.1%)

Memory
-6.2MiB live, 148.0MiB 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.4s (21.1%)

Memory
19.2MiB live, 1 872.6MiB allocated
Samples
562.0ms6 292×0valid
193.0ms805×2valid
146.0ms434×3valid
126.0ms725×1valid
Precisions
Click to see histograms. Total time spent on operations: 744.0ms
ival-hypot: 303.0ms (40.7% of total)
ival-mult: 169.0ms (22.7% of total)
ival-sqrt: 107.0ms (14.4% of total)
ival-sub: 76.0ms (10.2% of total)
adjust: 40.0ms (5.4% of total)
ival->: 33.0ms (4.4% of total)
exact: 13.0ms (1.7% of total)
ival-assert: 4.0ms (0.5% of total)
Bogosity

explain215.0ms (3.2%)

Memory
8.9MiB live, 302.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1390-1(6.167785902147723e-158 3.2647184530627016e-228)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
261(4.621693536852953e+133 7.359235999996268e-95)0-(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
240-1(4.621693536852953e+133 7.359235999996268e-95)(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-rescue1310
(+.f64 (*.f64 re re) (*.f64 im im))overflow131
(*.f64 re re)overflow76
(*.f64 im im)overflow71
-.f64(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation270
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))underflow28
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow5
(*.f64 re re)underflow47
(*.f64 im im)underflow66
(+.f64 (*.f64 re re) (*.f64 im im))underflow7
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow28
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue70
(+.f64 (*.f64 re re) (*.f64 im im))underflow7
(*.f64 re re)underflow47
(*.f64 im im)underflow66
Confusion
Predicted +Predicted -
+1620
-094
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+16200
-0094
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
094
1136
226
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
43.0ms404×0valid
28.0ms40×2valid
10.0ms28×3valid
7.0ms40×1valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
ival-hypot: 34.0ms (50.7% of total)
ival-mult: 17.0ms (25.4% of total)
ival-sqrt: 5.0ms (7.5% of total)
adjust: 3.0ms (4.5% of total)
ival-sub: 3.0ms (4.5% of total)
ival-add: 3.0ms (4.5% of total)
exact: 1.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess50.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03077
17175
215275
328575
442475
551575
663775
777575
883075
01215
02015
12515
23615
35215
47315
59815
615415
722715
831015
936015
1042015
1143415
1245015
1347015
1450015
1553115
1654315
1754515
054510
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Symmetry

(abs im)

Compiler

Compiled 15 to 12 computations (20% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
39.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Compiler

Compiled 15 to 12 computations (20% saved)

simplify27.0ms (0.4%)

Memory
7.6MiB live, 42.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
12575
23675
35275
47375
59875
615475
722775
831075
936075
1042075
1143475
1245075
1347075
1450075
1553175
1654375
1754575
054549
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(-.f64 (hypot.f64 im re) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 im re)
(+.f64 (*.f64 re re) (*.f64 im im))
(fma.f64 im im (*.f64 re re))
(*.f64 re re)
re
(*.f64 im im)
im

localize52.0ms (0.8%)

Memory
19.1MiB live, 98.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
accuracy5.235271845642948
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy6.020709252434434
(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy32.14933643864426
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
21.0ms202×0valid
12.0ms14×3valid
5.0ms20×2valid
4.0ms20×1valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 31.0ms
ival-hypot: 17.0ms (54.7% of total)
ival-mult: 7.0ms (22.5% of total)
adjust: 2.0ms (6.4% of total)
ival-sub: 2.0ms (6.4% of total)
ival-sqrt: 2.0ms (6.4% of total)
ival-add: 1.0ms (3.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series22.0ms (0.3%)

Memory
-1.7MiB live, 35.9MiB 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
5.0ms
re
@-inf
((+ (* re re) (* im im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (sqrt (+ (* re re) (* im im))) (- (sqrt (+ (* re re) (* im im))) re))
4.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
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))

simplify193.0ms (2.9%)

Memory
5.9MiB live, 274.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite174.0ms (2.6%)

Memory
11.1MiB live, 296.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

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

eval63.0ms (0.9%)

Memory
-23.4MiB live, 131.9MiB allocated
Compiler

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

prune16.0ms (0.2%)

Memory
8.8MiB live, 48.2MiB allocated
Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New39112403
Fresh000
Picked101
Done000
Total39212404
Accuracy
99.8%
Counts
404 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
82.3%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
76.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
51.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
46.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)))))
11.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
10.5%
(*.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)))))
47.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
35.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
16.0%
(*.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)))
22.3%
(*.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)))))
15.9%
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.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))
22.3%
#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 628 to 470 computations (25.2% saved)

simplify115.0ms (1.7%)

Memory
19.2MiB live, 57.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

IterNodesCost
043361
071301
1102301
2141301
3214301
4258301
5366301
6575301
7869301
81683301
92256301
103310301
113484301
123567301
133590301
143591301
153591301
163611301
173619301
183619301
193627301
03627301
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.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) #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)))))
#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 (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.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)
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) #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 (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (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)))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
(*.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)

localize134.0ms (2%)

Memory
-1.2MiB live, 151.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.15234375
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
accuracy0.15300751953688402
(*.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)))
accuracy0.16796875
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
accuracy12.570064300829118
#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))))
accuracy0.0078125
(*.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)))))
accuracy0.0234375
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy5.235271845642948
(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))))
accuracy13.339940864517516
#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
(*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
accuracy5.235271845642948
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
accuracy13.465966233252413
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
accuracy0
(*.f64 #s(literal -4 binary64) re)
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
accuracy5.235271845642948
(sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))
accuracy26.53689151298559
#s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))
accuracy0
(*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy0.0078125
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy5.235271845642948
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy6.020709252434434
(-.f64 (hypot.f64 im re) re)
Samples
44.0ms148×0invalid
17.0ms20×2valid
16.0ms14×3valid
14.0ms20×1valid
12.0ms54×0valid
Compiler

Compiled 663 to 76 computations (88.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 79.0ms
ival-mult: 26.0ms (33% of total)
ival-sqrt: 19.0ms (24.1% of total)
ival-hypot: 18.0ms (22.9% of total)
ival-sub: 6.0ms (7.6% of total)
ival-div: 4.0ms (5.1% of total)
adjust: 4.0ms (5.1% of total)
ival-add: 1.0ms (1.3% of total)
exact: 1.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series47.0ms (0.7%)

Memory
-16.3MiB live, 21.0MiB allocated
Counts
21 → 100
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 #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)))))
#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 (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/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)
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(* (* 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)))))))
(+ (* -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))))
(* -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)))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/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)
(* 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 (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1/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
29.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)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (sqrt 2)) (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (* im (sqrt 1/2)))
5.0ms
re
@-inf
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (sqrt 2)) (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (* im (sqrt 1/2)))
3.0ms
im
@0
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (sqrt (+ (* im im) (* re re))) re) (* 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)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (sqrt 2)) (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (* im (sqrt 1/2)))
3.0ms
re
@0
((* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) (* (- (sqrt (+ (* im im) (* re re))) re) 2) (- (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)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (sqrt 2)) (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (* im (sqrt 1/2)))
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)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (* (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (sqrt 2)) (* (sqrt (/ 1 re)) (* im (sqrt 1/2))) (* im (sqrt 1/2)))

simplify178.0ms (2.7%)

Memory
15.0MiB live, 187.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05512733
117822566
264172549
081352421
Stop Event
iter limit
node limit
Counts
100 → 99
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)
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(* (* 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)))))))
(+ (* -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))))
(* -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)))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/2 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* (pow im 2) (+ (* -1/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)
(* 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 (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* -2 (/ re im))))
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (* -1 (/ re im))))
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(* -1/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))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 re #s(literal -1/4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* -1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* -2 re) (* 2 im))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (/ re im) 2)))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (- (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal -2 binary64)) re (*.f64 #s(literal 2 binary64) im))
im
(+ im (* -1 re))
(-.f64 im re)
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(fma.f64 (fma.f64 (/.f64 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)
(* -4 re)
(*.f64 #s(literal -4 binary64) re)
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))
(* (* im (sqrt 1/2)) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(fma.f64 (*.f64 (*.f64 #s(literal -1/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 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 #s(literal 1/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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) #s(literal -1/32 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 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 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 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 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 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64)))))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(/.f64 (fma.f64 (neg.f64 (pow.f64 im #s(literal 8 binary64))) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im)))) re)
(* 1/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 (fma.f64 (/.f64 im re) (/.f64 #s(literal 2 binary64) re) (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 2 binary64) re))) (*.f64 re re))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)) #s(literal -1 binary64))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/8 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (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 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) im))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(* -1 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal -2 binary64)) (sqrt.f64 re))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (neg.f64 re) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #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 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #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 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 im (/.f64 im (*.f64 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 im (/.f64 im (*.f64 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 im (/.f64 im (*.f64 re re))) #s(literal 1/2 binary64) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))))
(* (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))
(* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (neg.f64 im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* (* im (* (pow (sqrt -1) 2) (sqrt 1/2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (neg.f64 im) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/32 binary64) (*.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re)))) (*.f64 im im))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/32 binary64)) (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 re)) (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal 1/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 re re)) #s(literal -1/8 binary64) (/.f64 #s(literal 5/128 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 im im) (sqrt.f64 #s(literal 1/2 binary64)))))) (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))) im)
(* im (+ (* -1/16 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)
(* im (+ (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))) (* (pow im 2) (+ (* -1/16 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/2 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) #s(literal -1/16 binary64) (*.f64 (*.f64 (sqrt.f64 re) #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/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 (sqrt.f64 re) #s(literal 1/2 binary64)) (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 (sqrt.f64 re) #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)
(* 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/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/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/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.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))))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* -2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* -2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -2 (/ re im)) (+ (* -1/4 (/ (pow re 4) (pow im 4))) (/ (pow re 2) (pow im 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (/.f64 (*.f64 (/.f64 re im) re) im)) (fma.f64 (/.f64 re im) #s(literal -2 binary64) #s(literal 2 binary64))) im)
(* im (+ 1 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (/.f64 (*.f64 (/.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)
(* -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) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/4 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) re (/.f64 (*.f64 #s(literal -3/16 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im))) (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 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64))))
(* -1 (* im (+ (* -1/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 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal -1/2 binary64)))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (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)) re)) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 #s(literal -3/8 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im))) (pow.f64 im #s(literal 3 binary64))))))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* 2 (/ re im)))))
(*.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 1 binary64)) #s(literal -2 binary64)) im)
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (pow re 2) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 (neg.f64 re) (/.f64 re im) (*.f64 #s(literal -2 binary64) re)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -2 re) (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im))) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(fma.f64 (/.f64 (-.f64 (*.f64 (*.f64 (/.f64 re im) re) #s(literal -1/2 binary64)) re) im) im (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(neg.f64 (fma.f64 (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/8 binary64) im) (*.f64 (*.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))

rewrite233.0ms (3.5%)

Memory
-24.0MiB live, 179.8MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
043313
071253
1216245
21126227
08485227
Stop Event
iter limit
node limit
iter limit
Counts
21 → 273
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 #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)))))
#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 (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))
Outputs
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) 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 re im) re)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (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) re) (*.f64 #s(literal -2 binary64) re))) (-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal -2 binary64) 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) 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) re) (*.f64 #s(literal -2 binary64) re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 re im)) (*.f64 #s(literal -2 binary64) 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 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (*.f64 #s(literal -2 binary64) re) #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 re im)))
(fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) (hypot.f64 re im)))
(fma.f64 (neg.f64 re) #s(literal 2 binary64) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (neg.f64 re) (*.f64 #s(literal 2 binary64) (hypot.f64 re im)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal -2 binary64) re))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 (neg.f64 re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal -2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 re im)))
(+.f64 (*.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 (hypot.f64 re im) #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) re))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (neg.f64 re) (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (fma.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (neg.f64 re) (hypot.f64 re im)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) (*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (+.f64 (hypot.f64 re im) re) (+.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.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 re im) (-.f64 im re))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 re im))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #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 re im) #s(literal 2 binary64)))) #s(literal 1 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 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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)))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (+.f64 (hypot.f64 re im) re)))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (+.f64 (hypot.f64 re im) re))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (+.f64 (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 (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 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (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 (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 #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 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 (hypot.f64 re im) #s(literal 0 binary64)) 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 (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 #s(literal 0 binary64) (-.f64 re (hypot.f64 re im)))
(-.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 (*.f64 #s(literal 1/2 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 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (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 (*.f64 #s(literal -4 binary64) re) #s(literal 1 binary64))
(*.f64 #s(literal -4 binary64) re)
(*.f64 re #s(literal -4 binary64))
(/.f64 #s(literal -4 binary64) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.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 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (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 (*.f64 #s(literal 1/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/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)))
(*.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 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (pow.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))) (*.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))) (+.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (fma.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (*.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))))) (neg.f64 (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (*.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (*.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))
(/.f64 #s(literal -1 binary64) (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 (fma.f64 (*.f64 #s(literal 4 binary64) im) im (*.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))) (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (neg.f64 (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (pow.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64)) re) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) (+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64))) (pow.f64 (-.f64 (/.f64 re im) #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (*.f64 re (-.f64 (pow.f64 (/.f64 re im) #s(literal 3 binary64)) #s(literal 8 binary64))) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) (+.f64 #s(literal 4 binary64) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1 binary64) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (*.f64 (/.f64 re im) re) #s(literal 1 binary64) (fma.f64 re #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (*.f64 (neg.f64 re) re) (/.f64 #s(literal -1 binary64) im) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (*.f64 (neg.f64 re) re) (/.f64 #s(literal -1 binary64) im) (fma.f64 re #s(literal -2 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 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(fma.f64 (/.f64 re im) re (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (/.f64 re im) re (fma.f64 re #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (*.f64 re re) (pow.f64 im #s(literal -1 binary64)) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (*.f64 re re) (pow.f64 im #s(literal -1 binary64)) (fma.f64 re #s(literal -2 binary64) (*.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 re (/.f64 re im) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 re (/.f64 re im) (fma.f64 re #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 (fma.f64 #s(literal 2 binary64) im (*.f64 (/.f64 re im) re)) (*.f64 #s(literal -2 binary64) re))
(+.f64 (fma.f64 #s(literal 2 binary64) im (*.f64 (/.f64 re im) re)) (*.f64 re #s(literal -2 binary64)))
(+.f64 (*.f64 (/.f64 re im) re) (fma.f64 #s(literal -2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(+.f64 (*.f64 (/.f64 re im) re) (fma.f64 re #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) im)))
(+.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (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 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 im (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 im (sqrt.f64 re))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) im)
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (/.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 im (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 im (sqrt.f64 re))) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) im)
(*.f64 im (pow.f64 re #s(literal -1/2 binary64)))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(*.f64 (*.f64 (/.f64 im (sqrt.f64 re)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (/.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 re)) im)
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (/.f64 im (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (/.f64 im (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 im (/.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 re)))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)))
(*.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 1/2 binary64))) im)
(*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))

eval84.0ms (1.3%)

Memory
-2.8MiB live, 71.6MiB allocated
Compiler

Compiled 12 432 to 1 968 computations (84.2% saved)

prune21.0ms (0.3%)

Memory
-0.8MiB live, 38.3MiB allocated
Pruning

15 alts after pruning (10 fresh and 5 done)

PrunedKeptTotal
New3639372
Fresh617
Picked055
Done000
Total36915384
Accuracy
100.0%
Counts
384 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
50.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
82.3%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
11.3%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
47.0%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
22.5%
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))) #s(literal 1/2 binary64))
76.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
51.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
46.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)))))
35.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
22.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
22.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im)))
22.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 binary64)))))
22.3%
(*.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)))))
22.3%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
Compiler

Compiled 524 to 404 computations (22.9% saved)

simplify148.0ms (2.2%)

Memory
20.5MiB live, 102.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
cost-diff0
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
cost-diff0
(/.f64 (sqrt.f64 re) im)
cost-diff0
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
cost-diff704
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
cost-diff0
(/.f64 (*.f64 im im) re)
cost-diff0
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
cost-diff0
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
cost-diff0
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
cost-diff0
(*.f64 #s(literal 2 binary64) im)
cost-diff0
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
cost-diff0
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
cost-diff0
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
cost-diff0
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
cost-diff0
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
cost-diff0
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
cost-diff12608
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
049316
075281
1109273
2179265
3353265
4659265
5726265
6782265
7844265
8933265
9993265
101530265
111790265
121881265
132268265
144054265
155767265
166052265
176277265
186388265
196894265
08050265
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(-.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
(pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))
#s(literal 2 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
#s(literal 1 binary64)
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 re)
re
im
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(sqrt.f64 #s(literal 1/2 binary64))
im
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
Outputs
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 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 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(sqrt.f64 (-.f64 (hypot.f64 im re) re))
(-.f64 (hypot.f64 re im) re)
(-.f64 (hypot.f64 im re) re)
(hypot.f64 re im)
(hypot.f64 im re)
re
im
(pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))
#s(literal 2 binary64)
#s(literal 1/4 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
#s(literal 1 binary64)
(/.f64 (sqrt.f64 re) im)
(sqrt.f64 re)
re
im
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(sqrt.f64 #s(literal 1/2 binary64))
im
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re

localize163.0ms (2.5%)

Memory
15.1MiB live, 134.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.09765625
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
accuracy0.16796875
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
accuracy0.1875
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
accuracy12.570140778390595
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
accuracy0.08203125
(/.f64 (sqrt.f64 re) im)
accuracy0.2818041011845044
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
accuracy12.570064300829118
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
accuracy0.0078125
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
accuracy3.3291838328820686
(/.f64 (*.f64 im im) re)
accuracy5.235271845642948
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
accuracy12.532144501314749
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
accuracy0
(*.f64 #s(literal 2 binary64) im)
accuracy0.0078125
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
accuracy5.235271845642948
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy13.096511626994348
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.125
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
accuracy0.15234375
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
accuracy5.223132838194558
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
accuracy6.020709252434434
(-.f64 (hypot.f64 re im) re)
Samples
72.0ms148×0invalid
30.0ms14×3valid
15.0ms54×0valid
12.0ms20×2valid
9.0ms20×1valid
Compiler

Compiled 625 to 88 computations (85.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 113.0ms
ival-sqrt: 36.0ms (31.9% of total)
ival-mult: 30.0ms (26.6% of total)
ival-sub: 21.0ms (18.6% of total)
ival-hypot: 13.0ms (11.5% of total)
ival-div: 6.0ms (5.3% of total)
ival-pow: 4.0ms (3.5% of total)
adjust: 3.0ms (2.7% of total)
exact: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series52.0ms (0.8%)

Memory
2.3MiB live, 40.3MiB allocated
Counts
22 → 158
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(-.f64 (hypot.f64 re im) re)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
Outputs
(* (sqrt im) (sqrt 2))
(+ (* -1 (* (sqrt (/ 1 im)) (/ re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* -1 (* (sqrt (/ 1 im)) (/ 1 (sqrt 2)))) (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (pow (sqrt 2) 3)))))))) (* (sqrt im) (sqrt 2)))
(* 1/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))))))))
(* (pow 2 1/4) (sqrt im))
(+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 im)) re))) (* (pow 2 1/4) (sqrt im)))
(+ (* re (+ (* -1/2 (* (pow 2 1/4) (sqrt (/ 1 im)))) (* 1/8 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) re))))) (* (pow 2 1/4) (sqrt im)))
(+ (* re (+ (* -1/2 (* (pow 2 1/4) (sqrt (/ 1 im)))) (* re (+ (* 1/16 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 5))) re))) (* 1/8 (* (pow 2 1/4) (sqrt (/ 1 (pow im 3))))))))) (* (pow 2 1/4) (sqrt im)))
(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 (/ 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)))
(/ (pow im 2) re)
(* im (sqrt (/ 1 re)))
(* (/ 1 im) (sqrt re))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
im
(+ im (* -1 re))
(+ im (* re (- (* 1/2 (/ re im)) 1)))
(+ im (* re (- (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))) 1)))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (* im (sqrt (/ 1 re))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re)))))
(+ (* -1/8 (* (pow im 3) (sqrt (/ 1 (pow re 5))))) (+ (* -1/128 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (+ (* 1/16 (* (pow im 5) (sqrt (/ 1 (pow re 9))))) (* im (sqrt (/ 1 re))))))
(+ (* -1/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)))))))
(* (pow 2 1/4) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(+ (* -1/16 (* (pow 2 1/4) (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 2 1/4) (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (pow 2 1/4) (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (+ (* 1/32 (* (pow 2 1/4) (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9)))))) (* (pow 2 1/4) (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(+ (* -1/16 (* (pow 2 1/4) (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (+ (* -1/512 (* (pow 2 1/4) (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9)))))) (+ (* 1/32 (* (pow 2 1/4) (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9)))))) (* (pow 2 1/4) (* (* im (sqrt 1/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))))))
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re)
(/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re)
(/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re)
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(* -2 (* (sqrt re) (sqrt -1)))
(* -1 (* re (+ (* -1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 2 (* (sqrt (/ 1 re)) (sqrt -1))))))
(* -1/2 (* (sqrt re) (* (sqrt -1) (pow (sqrt 2) 2))))
(* -1 (* re (+ (* -1/8 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2)))))))
(* -1 (* (pow 2 1/4) (* (sqrt re) (* (sqrt -1) (sqrt 2)))))
(* -1 (* re (+ (* -1/4 (* (pow 2 1/4) (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 2 1/4) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (pow 2 1/4) (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (* 1/4 (* (pow 2 1/4) (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* (pow 2 1/4) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (pow 2 1/4) (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3)))))) (+ (* 1/32 (* (pow 2 1/4) (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3)))))) (* 1/4 (* (pow 2 1/4) (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))))) (pow re 3))) (* (pow 2 1/4) (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 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))))))
(* -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 (* (/ (pow (sqrt -1) 2) im) (sqrt re)))
(* 1/2 (* (* im (* (pow (sqrt -1) 2) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -2 re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* im (+ (sqrt (/ 1 re)) (* -1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5)))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* 7/128 (* (pow im 2) (sqrt (/ 1 (pow re 9)))))))))
(* im (+ (sqrt (/ 1 re)) (* (pow im 2) (+ (* -1/8 (sqrt (/ 1 (pow re 5)))) (* (pow im 2) (+ (* -33/1024 (* (pow im 2) (sqrt (/ 1 (pow re 13))))) (* 7/128 (sqrt (/ 1 (pow re 9))))))))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (pow im 2) (* (sqrt 2) (+ (* -1/16 (/ (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))) (* (pow re 2) (pow (sqrt 1/2) 2)))) (* 5/128 (/ 1 (pow re 7)))))) (sqrt 1/2)) (sqrt re))) (* 1/4 (* (sqrt re) (/ (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2)))))) (sqrt 1/2))))))))))
(* im (+ (* -1/16 (* (pow 2 1/4) (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5)))))) (* (pow 2 1/4) (* (sqrt (/ 1 re)) (sqrt 1/2)))))
(* im (+ (* (pow 2 1/4) (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/16 (* (pow 2 1/4) (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2))))) (* 1/2 (* (pow 2 1/4) (* (/ (* (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 (+ (* (pow 2 1/4) (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/16 (* (pow 2 1/4) (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2))))) (* (pow im 2) (+ (* -1/2 (* (pow 2 1/4) (* (/ (* (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 (* (pow 2 1/4) (* (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 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)))
(* 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 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (pow (sqrt 2) 3)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (* (pow 2 1/4) (sqrt (/ 1 im)))))
(* im (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (+ (* 1/4 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (* (pow 2 1/4) (sqrt (/ 1 im))))))
(* im (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) re))) (+ (* -1/8 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (+ (* 1/4 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 5))) (pow re 2)))) (* (pow 2 1/4) (sqrt (/ 1 im)))))))
(* 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))))))
(* 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 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))) (+ (* -1 (/ (+ (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (* 1/2 (* (sqrt im) (/ (* (pow re 2) (sqrt -1)) (pow (sqrt 2) 3))))) (pow im 3))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1/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 (* (pow 2 1/4) (* (sqrt im) (sqrt -1))))
(* -1 (* im (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 2 1/4) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (+ (* -1/4 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1))))) (* (pow 2 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (pow 2 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1))))) (* 1/4 (* (pow 2 1/4) (* (sqrt im) (* (pow re 2) (sqrt -1)))))) (pow im 3))) (+ (* -1/2 (* (pow 2 1/4) (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1))))) (* (pow 2 1/4) (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/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 (* 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
16.0ms
re
@0
((* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) (* (* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) 1/2) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (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) (* (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) (/ (* im im) re) (/ 1 (/ (sqrt re) im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (sqrt re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (* 1/2 (* (sqrt 1/2) im)) (- (sqrt (+ (* re re) (* im im))) re) (* (sqrt 1/2) im))
10.0ms
im
@inf
((* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) (* (* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) 1/2) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (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) (* (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) (/ (* im im) re) (/ 1 (/ (sqrt re) im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (sqrt re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (* 1/2 (* (sqrt 1/2) im)) (- (sqrt (+ (* re re) (* im im))) re) (* (sqrt 1/2) im))
6.0ms
re
@-inf
((* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) (* (* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) 1/2) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (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) (* (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) (/ (* im im) re) (/ 1 (/ (sqrt re) im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (sqrt re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (* 1/2 (* (sqrt 1/2) im)) (- (sqrt (+ (* re re) (* im im))) re) (* (sqrt 1/2) im))
6.0ms
im
@0
((* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) (* (* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) 1/2) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (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) (* (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) (/ (* im im) re) (/ 1 (/ (sqrt re) im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (sqrt re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (* 1/2 (* (sqrt 1/2) im)) (- (sqrt (+ (* re re) (* im im))) re) (* (sqrt 1/2) im))
6.0ms
im
@-inf
((* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) (* (* (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (pow 2 1/4)) 1/2) (* (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (pow 2 1/4)) (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) (* (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) (/ (* im im) re) (/ 1 (/ (sqrt re) im)) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ (sqrt re) im) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (sqrt (/ 1 re))) (* (* 1/2 (* (sqrt 1/2) im)) (sqrt 2)) (* 1/2 (* (sqrt 1/2) im)) (- (sqrt (+ (* re re) (* im im))) re) (* (sqrt 1/2) im))

simplify210.0ms (3.2%)

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

Useful iterations: 0 (0.0ms)

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

rewrite529.0ms (8%)

Memory
-63.8MiB live, 185.6MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
049274
075239
1204217
2871198
08502198
Stop Event
iter limit
node limit
iter limit
Counts
22 → 463
Calls
Call 1
Inputs
(*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(sqrt.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
(/.f64 (*.f64 im im) re)
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im)))
(/.f64 (sqrt.f64 re) im)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(-.f64 (hypot.f64 re im) re)
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
Outputs
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 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)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 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 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 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 (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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)))
(exp.f64 (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 (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 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 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 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im 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)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 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 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 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/4 binary64))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.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 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.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 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (hypot.f64 im re) re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (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 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (sqrt.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 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))))
(sqrt.f64 (-.f64 (hypot.f64 im re) re))
(exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 im #s(literal 2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) #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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))))
(*.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64)))
#s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 (*.f64 im im) (pow.f64 re #s(literal -1/2 binary64))) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) #s(literal -1 binary64))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 im re) im)
(*.f64 (/.f64 im (sqrt.f64 re)) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (neg.f64 im) (*.f64 im (/.f64 #s(literal -1 binary64) re)))
(*.f64 (neg.f64 im) (/.f64 im (neg.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 im im)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1 binary64))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) re)
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (neg.f64 re))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (/.f64 (*.f64 im im) re) #s(literal 1 binary64))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 im im))))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re)))
(neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(neg.f64 (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(exp.f64 (fma.f64 (log.f64 re) #s(literal -1 binary64) (*.f64 (log.f64 im) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 im) #s(literal 2 binary64) (neg.f64 (log.f64 re))))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (neg.f64 im))
(*.f64 (/.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)) im)
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/2 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) #s(literal -1 binary64)) im)
(*.f64 (*.f64 #s(literal 1 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 im (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal -1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal -1/4 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal 1 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) (sqrt.f64 re)) (/.f64 (neg.f64 im) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (neg.f64 im))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (/.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) im))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (/.f64 (pow.f64 re #s(literal -1/4 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal -1 binary64))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(*.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) im)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) im))
(*.f64 #s(literal 1 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 im (/.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 im (pow.f64 re #s(literal -1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) (/.f64 (sqrt.f64 re) im)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(pow.f64 (/.f64 (sqrt.f64 re) im) #s(literal -1 binary64))
(/.f64 (/.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (pow.f64 re #s(literal 1/4 binary64)))
(/.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (/.f64 #s(literal -1 binary64) im))
(/.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal -1 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (pow.f64 im #s(literal -1 binary64)) (sqrt.f64 (neg.f64 re))))
(/.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(/.f64 (neg.f64 im) (*.f64 #s(literal 1 binary64) (neg.f64 (sqrt.f64 re))))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(/.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64)))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 re #s(literal 1/4 binary64))) (pow.f64 re #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sqrt.f64 re))) (/.f64 #s(literal -1 binary64) im))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal 1/4 binary64)) im))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) im))
(*.f64 (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (/.f64 (pow.f64 re #s(literal 1/4 binary64)) im))
(*.f64 (/.f64 #s(literal -1 binary64) im) (neg.f64 (sqrt.f64 re)))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (sqrt.f64 re))
(*.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im) #s(literal -1 binary64))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 (/.f64 #s(literal -1 binary64) im) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 re)) (*.f64 (/.f64 #s(literal -1 binary64) im) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 re)) (/.f64 #s(literal -1 binary64) im))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 1 binary64))
(*.f64 (sqrt.f64 re) (pow.f64 im #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 re) im) #s(literal 1 binary64))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re))) (neg.f64 im))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sqrt.f64 re))) (neg.f64 im))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)) (neg.f64 im))
(/.f64 (/.f64 (neg.f64 (sqrt.f64 re)) #s(literal 1 binary64)) (neg.f64 im))
(/.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 re #s(literal -1/2 binary64)))
(/.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im) #s(literal -1 binary64))
(/.f64 (neg.f64 (sqrt.f64 re)) (neg.f64 im))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(/.f64 (/.f64 (sqrt.f64 re) im) #s(literal 1 binary64))
(/.f64 (sqrt.f64 re) im)
(/.f64 #s(literal 1 binary64) (/.f64 im (sqrt.f64 re)))
(neg.f64 (/.f64 (neg.f64 (sqrt.f64 re)) im))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 im)) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sqrt.f64 re)) im))
(exp.f64 (neg.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 im (sqrt.f64 re))) #s(literal -1 binary64)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) im))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) im)
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) im))
(*.f64 (*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (/.f64 (*.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 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 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 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 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re)))))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) im))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re)))))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re))))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) im)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 im (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) 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 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (/.f64 im (sqrt.f64 re)))))
(*.f64 im (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (sqrt.f64 (/.f64 #s(literal 2 binary64) re))))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 2 binary64) re)) #s(literal 1/2 binary64))))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal 1/4 binary64))) (pow.f64 re #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) im) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64))) (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (*.f64 #s(literal 1 binary64) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) im))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) #s(literal 1 binary64)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) im))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/16 binary64)) (*.f64 (pow.f64 #s(literal 8 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) im) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) im)))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 im (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)))
(*.f64 im (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(*.f64 im #s(literal 1/2 binary64))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im))
(*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 3/2 binary64)))
(*.f64 (/.f64 (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 (/.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 (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)))) (/.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 (+.f64 (hypot.f64 im re) re) re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (+.f64 (hypot.f64 im re) re) (/.f64 (-.f64 (hypot.f64 im re) re) (+.f64 (hypot.f64 im re) re)))
(*.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (hypot.f64 im re) re) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(*.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))) (/.f64 #s(literal 1 binary64) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 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)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (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))) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 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 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re))) (*.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re))) (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re))))) (+.f64 (/.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 (*.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 (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 (/.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 (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 (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))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (fma.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re))) (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re))) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (fma.f64 (+.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))) (fma.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 (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)))) (fma.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 (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 (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 (-.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 (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 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 (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 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 (+.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)))) (*.f64 (fma.f64 (+.f64 (hypot.f64 im re) re) re (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)))))
(/.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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (neg.f64 re))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re))) (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 (fma.f64 (neg.f64 im) im (*.f64 re re))) re)) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 re) re (*.f64 im im))) (neg.f64 re))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) #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 (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im))) re)) (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im 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 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (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 (-.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) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 im re) #s(literal 2 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 (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 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.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 (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 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (hypot.f64 im 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 #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)))
(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 (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 (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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)))) (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 (fma.f64 (neg.f64 im) im (*.f64 re re)) #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 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))) (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 (fma.f64 (neg.f64 re) re (*.f64 im im)) #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 (fma.f64 (neg.f64 re) re (*.f64 im 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))) (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))) (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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (+.f64 (hypot.f64 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 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.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 im re) re)) (neg.f64 (*.f64 re (/.f64 re (+.f64 (hypot.f64 im re) re)))))
(fma.f64 (neg.f64 re) #s(literal 1 binary64) (hypot.f64 im re))
(fma.f64 #s(literal -1 binary64) re (hypot.f64 im 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 (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 re #s(literal -1 binary64) (hypot.f64 im re))
(-.f64 (+.f64 (hypot.f64 im re) #s(literal 0 binary64)) 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 #s(literal 0 binary64) (-.f64 re (hypot.f64 im re)))
(-.f64 (hypot.f64 im re) re)
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (+.f64 (hypot.f64 im re) re)) (neg.f64 (*.f64 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))
(*.f64 (*.f64 im (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal 1/4 binary64)) im))
(*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)
(*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))

eval80.0ms (1.2%)

Memory
39.8MiB live, 152.4MiB allocated
Compiler

Compiled 20 890 to 3 102 computations (85.2% saved)

prune24.0ms (0.4%)

Memory
-15.5MiB live, 59.3MiB allocated
Pruning

15 alts after pruning (7 fresh and 8 done)

PrunedKeptTotal
New6135618
Fresh325
Picked145
Done145
Total61815633
Accuracy
100.0%
Counts
633 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.7%
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
76.0%
(*.f64 (*.f64 (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/4 binary64)))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
50.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
82.3%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
11.3%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
47.0%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
76.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
51.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
46.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)))))
35.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
22.2%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
22.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))))
22.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
22.5%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
22.4%
#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 458 to 353 computations (22.9% saved)

simplify85.0ms (1.3%)

Memory
5.2MiB live, 63.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
cost-diff0
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
cost-diff0
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
cost-diff0
#s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
cost-diff0
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
cost-diff0
(sqrt.f64 re)
cost-diff0
(*.f64 #s(literal 1/2 binary64) im)
cost-diff0
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
cost-diff0
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
cost-diff0
(sqrt.f64 re)
cost-diff0
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
cost-diff0
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
cost-diff0
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
cost-diff0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
cost-diff448
(*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))
cost-diff6336
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
cost-diff12800
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
050316
073274
1103271
2131251
3173251
4270251
5388251
6537251
7731251
81093251
91339251
101522251
111910251
122142251
132184251
142337251
152372251
162383251
02383251
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))))
(*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))
#s(literal 2 binary64)
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))
(-.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal -1 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
#s(literal 1/2 binary64)
(sqrt.f64 re)
re
im
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
#s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #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)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(-.f64 im re)
im
re
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))))
(sqrt.f64 (*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(-.f64 (hypot.f64 re im) re)
(*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))
(log.f64 (-.f64 (hypot.f64 re im) re))
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))
(pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))
(-.f64 (hypot.f64 im re) re)
(-.f64 (hypot.f64 re im) re)
(hypot.f64 im re)
(hypot.f64 re im)
im
re
#s(literal -1 binary64)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
#s(literal 1/2 binary64)
(sqrt.f64 re)
re
im
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
im
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
#s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(/.f64 #s(literal 1 binary64) re)
#s(literal 1 binary64)
re
im
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.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 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))
#s(literal 1/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
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize208.0ms (3.1%)

Memory
1.8MiB live, 238.4MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
accuracy0.18425751953688405
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
accuracy5.223132838194558
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
accuracy13.465966233252413
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
accuracy0.0078125
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
accuracy0.04296875
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
accuracy0.09765625
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
accuracy12.570064300829118
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
accuracy0
(*.f64 #s(literal 1/2 binary64) im)
accuracy0
(sqrt.f64 re)
accuracy0.09765625
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
accuracy12.570140778390595
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
accuracy0
(sqrt.f64 re)
accuracy0.09765625
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
accuracy0.1328125
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
accuracy12.570140778390595
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
accuracy1.864669738727555
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
accuracy5.235271845642948
(sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))))
accuracy6.020709252434434
(-.f64 (hypot.f64 im re) re)
accuracy7.021816447882971
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
Samples
119.0ms148×0invalid
21.0ms54×0valid
17.0ms21×2valid
14.0ms14×3valid
10.0ms19×1valid
Compiler

Compiled 634 to 93 computations (85.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 151.0ms
ival-div: 77.0ms (50.9% of total)
ival-mult: 22.0ms (14.5% of total)
ival-sqrt: 16.0ms (10.6% of total)
ival-hypot: 13.0ms (8.6% of total)
ival-log: 7.0ms (4.6% of total)
adjust: 4.0ms (2.6% of total)
ival-exp: 4.0ms (2.6% of total)
ival-sub: 4.0ms (2.6% of total)
ival-pow: 4.0ms (2.6% of total)
exact: 1.0ms (0.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series35.0ms (0.5%)

Memory
-29.1MiB live, 52.5MiB allocated
Counts
22 → 163
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
(sqrt.f64 re)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
#s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(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 (hypot.f64 im re) re)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
Outputs
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)))
(log (/ 1 im))
(+ (log (/ 1 im)) (/ re im))
(+ (log (/ 1 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log (/ 1 im)) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ 1 im))) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (* -1 (log (/ 1 im))) (* re (- (* (pow re 2) (+ (* -3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/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))))
(* 1/2 (sqrt (/ 1 re)))
(sqrt 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)))
(* im (sqrt (/ 1 re)))
(* 1/2 (sqrt im))
(+ (* -1/4 (* (sqrt (/ 1 im)) re)) (* 1/2 (sqrt im)))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/16 (sqrt (/ 1 (pow im 3)))))))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/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 (/ 1 re))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (* -1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* -1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/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))))))
(* -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))))))))
(+ (log 1/2) (log (/ -1 re)))
(+ (log 1/2) (+ (log (/ -1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 1/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) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -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)))))))
(* -1 (+ (log 1/2) (log (/ -1 re))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (+ (* -1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/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) (pow (sqrt -1) 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))))))
(* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re)))
(* -1/2 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(* -1 (* re (+ (* -1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 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))))))
(* (sqrt (/ 1 re)) (pow (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))))
(+ (log (* 2 re)) (* -2 (log im)))
(+ (log (* 2 re)) (+ (* -2 (log im)) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 2 re)) (+ (* -2 (log im)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))))
(+ (log (* 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)))))))
(* -1 (+ (log (* 2 re)) (* -2 (log im))))
(+ (* -1 (+ (log (* 2 re)) (* -2 (log im)))) (* -1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log (* 2 re)) (* -2 (log im)))) (* (pow im 2) (- (* 3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (* -1 (+ (log (* 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))))))
(* 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))))))))))
(* im (+ (* -1/32 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/4 (* (/ (* (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 (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (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/4 (* (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 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 (* -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)))
(+ (log (/ 1 im)) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im)))
(+ (log (/ 1 im)) (+ (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2)))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im)))))))
(* 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)))))))
(* -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)))))
(log (/ -1 im))
(+ (log (/ -1 im)) (* -1 (/ re im)))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im)) (* 1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))))) im))) im)))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (/ re im))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2)))) (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im))) im))) im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1/2 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/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))))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
re
@0
((exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)) (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1) (* 1/2 (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1))))) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (/ 1/2 (sqrt re)) im) (/ 1/2 (sqrt re)) (sqrt re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* 1/2 im) (sqrt re)) (* 1/2 im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ 1 (/ (sqrt re) im)) (* (sqrt (/ 1 re)) im) (* (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt 2)) (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)))) (sqrt (/ 1 re)))
6.0ms
re
@-inf
((exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)) (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1) (* 1/2 (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1))))) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (/ 1/2 (sqrt re)) im) (/ 1/2 (sqrt re)) (sqrt re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* 1/2 im) (sqrt re)) (* 1/2 im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ 1 (/ (sqrt re) im)) (* (sqrt (/ 1 re)) im) (* (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt 2)) (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)))) (sqrt (/ 1 re)))
6.0ms
im
@-inf
((exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)) (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1) (* 1/2 (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1))))) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (/ 1/2 (sqrt re)) im) (/ 1/2 (sqrt re)) (sqrt re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* 1/2 im) (sqrt re)) (* 1/2 im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ 1 (/ (sqrt re) im)) (* (sqrt (/ 1 re)) im) (* (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt 2)) (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)))) (sqrt (/ 1 re)))
5.0ms
re
@inf
((exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)) (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1) (* 1/2 (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1))))) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (/ 1/2 (sqrt re)) im) (/ 1/2 (sqrt re)) (sqrt re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* 1/2 im) (sqrt re)) (* 1/2 im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ 1 (/ (sqrt re) im)) (* (sqrt (/ 1 re)) im) (* (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt 2)) (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)))) (sqrt (/ 1 re)))
4.0ms
im
@0
((exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)) (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1) (* 1/2 (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1))))) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (* (/ 1/2 (sqrt re)) im) (/ 1/2 (sqrt re)) (sqrt re) (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/ (* 1/2 im) (sqrt re)) (* 1/2 im) (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/ 1 (/ (sqrt re) im)) (* (sqrt (/ 1 re)) im) (* (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt 2)) (* 1/2 (sqrt (- (sqrt (+ (* re re) (* im im))) re))) (sqrt (- (sqrt (+ (* re re) (* im im))) re)) (- (sqrt (+ (* re re) (* im im))) re) (- (sqrt (+ (* im im) (* re re))) re) (sqrt (* 2 (exp (* (log (pow (- (sqrt (+ (* im im) (* re re))) re) -1)) -1)))) (sqrt (/ 1 re)))

simplify224.0ms (3.4%)

Memory
34.1MiB live, 260.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08905072
128624763
272874751
081214520
Stop Event
iter limit
node limit
Counts
163 → 162
Calls
Call 1
Inputs
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)))
(log (/ 1 im))
(+ (log (/ 1 im)) (/ re im))
(+ (log (/ 1 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log (/ 1 im)) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ 1 im))) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (* -1 (log (/ 1 im))) (* re (- (* (pow re 2) (+ (* -3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/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))))
(* 1/2 (sqrt (/ 1 re)))
(sqrt 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)))
(* im (sqrt (/ 1 re)))
(* 1/2 (sqrt im))
(+ (* -1/4 (* (sqrt (/ 1 im)) re)) (* 1/2 (sqrt im)))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) re)))))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/16 (sqrt (/ 1 (pow im 3)))))))))
(sqrt im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* -1/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 (/ 1 re))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re)
(/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re)
(+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (* -1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* -1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))))))
(* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))))
(* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re)))))
(+ (* -1/16 (* (/ (* (pow im 3) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/512 (* (/ (* (pow im 5) (sqrt 2)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/32 (* (/ (* (pow im 5) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* (* im (* (sqrt 1/2) (sqrt 2))) (sqrt (/ 1 re))))))
(* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/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))))))
(* -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))))))))
(+ (log 1/2) (log (/ -1 re)))
(+ (log 1/2) (+ (log (/ -1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 1/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) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -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)))))))
(* -1 (+ (log 1/2) (log (/ -1 re))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (+ (* -1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/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) (pow (sqrt -1) 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))))))
(* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re)))
(* -1/2 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(* -1 (* re (+ (* -1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 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))))))
(* (sqrt (/ 1 re)) (pow (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))))
(+ (log (* 2 re)) (* -2 (log im)))
(+ (log (* 2 re)) (+ (* -2 (log im)) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 2 re)) (+ (* -2 (log im)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2)))))))
(+ (log (* 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)))))))
(* -1 (+ (log (* 2 re)) (* -2 (log im))))
(+ (* -1 (+ (log (* 2 re)) (* -2 (log im)))) (* -1/4 (/ (pow im 2) (pow re 2))))
(+ (* -1 (+ (log (* 2 re)) (* -2 (log im)))) (* (pow im 2) (- (* 3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (* -1 (+ (log (* 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))))))
(* 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))))))))))
(* im (+ (* -1/32 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/4 (* (/ (* (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 (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (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/4 (* (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 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 (* -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)))
(+ (log (/ 1 im)) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im)))
(+ (log (/ 1 im)) (+ (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2)))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im))))))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im)))))))
(* 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)))))))
(* -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)))))
(log (/ -1 im))
(+ (log (/ -1 im)) (* -1 (/ re im)))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im)) (* 1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))))) im))) im)))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (/ re im))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2)))) (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im))) im))) im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1/2 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/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))))))
Outputs
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 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal -1 binary64)) re im)
(log (/ 1 im))
(neg.f64 (log.f64 im))
(+ (log (/ 1 im)) (/ re im))
(-.f64 (/.f64 re im) (log.f64 im))
(+ (log (/ 1 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) im)) re (neg.f64 (log.f64 im)))
(+ (log (/ 1 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 re (/.f64 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 (neg.f64 (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))) (* re (- (* 1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 (/.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))
(+ (* -1 (log (/ 1 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 #s(literal -3/40 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 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))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(+ (* -1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/4 binary64))) re (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* -1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/32 binary64))) re)) re (*.f64 (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* 1/2 (* im (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* 1/2 (sqrt (/ 1 re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64))
(sqrt re)
(sqrt.f64 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 #s(literal -1/2 binary64) (*.f64 (*.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 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* -1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal 1/16 binary64))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* im (sqrt (/ 1 re)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(* 1/2 (sqrt im))
(*.f64 (sqrt.f64 im) #s(literal 1/2 binary64))
(+ (* -1/4 (* (sqrt (/ 1 im)) re)) (* 1/2 (sqrt im)))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/4 binary64)) re (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* 1/16 (* (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/16 binary64)) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/4 binary64))) re (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(+ (* 1/2 (sqrt im)) (* re (+ (* -1/4 (sqrt (/ 1 im))) (* re (+ (* 1/32 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/16 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/16 binary64))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal -1/4 binary64))) re (*.f64 (sqrt.f64 im) #s(literal 1/2 binary64)))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* -1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 #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))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (*.f64 #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) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) re (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (sqrt.f64 im))
(sqrt (/ 1 re))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (/.f64 (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 (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 (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 (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)
(+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))
(+.f64 (log.f64 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im))))
(+ (log (/ 2 (pow im 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 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal -12 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal -3/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/24 binary64) (log.f64 re)) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+ (log (/ 2 (pow im 2))) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))) (+ (* 1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(+.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal -360 binary64) (*.f64 im im)) (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 im #s(literal 4 binary64)))) #s(literal -2 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 im im)) #s(literal 1/4 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/16 binary64)))) (fma.f64 (*.f64 #s(literal 90 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal 15/4 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal -12 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal -3/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/24 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/4 binary64) (log.f64 re)))) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im))))
(* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re)))))
(neg.f64 (+.f64 (log.f64 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (* -1/4 (/ (pow im 2) (pow re 2))))
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64)) (+.f64 (log.f64 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im)))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4)))))
(fma.f64 #s(literal -1/24 binary64) (/.f64 (fma.f64 (*.f64 #s(literal -12 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal -3/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64)) (+.f64 (log.f64 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im))))))
(+ (* -1 (+ (log (/ 2 (pow im 2))) (* -1 (log (/ 1 re))))) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* -1/24 (/ (+ (* -12 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))) (* -3/4 (pow im 4))) (pow re 4))) (* -1/720 (/ (+ (* -360 (* (pow im 2) (+ (* -2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 4))) (+ (* 1/16 (pow im 4)) (* 1/4 (* (pow im 2) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))))) (+ (* 15/4 (pow im 6)) (* 90 (* (pow im 4) (+ (* -1/8 (pow im 2)) (* 1/4 (pow im 2))))))) (pow re 6))))))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (-.f64 (fma.f64 #s(literal -1/720 binary64) (/.f64 (fma.f64 (*.f64 #s(literal -360 binary64) (*.f64 im im)) (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 im #s(literal 4 binary64)))) #s(literal -2 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 im im)) #s(literal 1/4 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/16 binary64)))) (fma.f64 (*.f64 #s(literal 90 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal 15/4 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal -1/24 binary64) (/.f64 (fma.f64 (*.f64 #s(literal -12 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (*.f64 #s(literal -3/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))))) (+.f64 (log.f64 re) (log.f64 (/.f64 #s(literal 2 binary64) (*.f64 im im))))))
(* 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/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (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/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/512 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/64 binary64) (/.f64 (*.f64 (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/32 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 (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/256 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 #s(literal 1/32 binary64) (/.f64 (*.f64 (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)))))
(* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* -1/32 (* (/ (pow im 3) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (/.f64 (*.f64 #s(literal -1/32 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 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re))))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/32 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 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (/.f64 (*.f64 #s(literal 1/64 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 1/2)) (sqrt (/ 1 (pow re 5))))) (+ (* -1/1024 (* (/ (pow im 5) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/64 (* (/ (pow im 5) (sqrt 1/2)) (sqrt (/ 1 (pow re 9))))) (* 1/2 (* (* im (sqrt 1/2)) (sqrt (/ 1 re)))))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/32 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)) (sqrt.f64 #s(literal 1/2 binary64))) (/.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im)) (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)))))
(* -2 re)
(*.f64 #s(literal -2 binary64) re)
(* -1 (* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64)) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) (neg.f64 re))
(* -1 (* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(+ (log 1/2) (log (/ -1 re)))
(+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64)))
(+ (log 1/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 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64))))
(+ (log 1/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 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (/.f64 #s(literal -1 binary64) re))) (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 9/4 binary64) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/24 binary64) (log.f64 #s(literal 1/2 binary64))))
(+ (log 1/2) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -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 (pow.f64 im #s(literal 6 binary64)) #s(literal 5/128 binary64)) #s(literal -1440 binary64) (*.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 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/24 binary64)) (pow.f64 re #s(literal 4 binary64))))) (+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64))))
(* -1 (+ (log 1/2) (log (/ -1 re))))
(neg.f64 (+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (* 1/4 (/ (pow im 2) (pow re 2))))
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/4 binary64)) (+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 9/4 binary64) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1/24 binary64) (-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/4 binary64)) (+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (+ (log 1/2) (log (/ -1 re)))) (+ (* -1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (+ (* -1/720 (/ (+ (* -1440 (+ (* 1/128 (pow im 6)) (* 1/32 (pow im 6)))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(-.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 5/128 binary64)) #s(literal -1440 binary64) (*.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 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal -1/24 binary64)) (pow.f64 re #s(literal 4 binary64))))) (+.f64 (log.f64 (/.f64 #s(literal -1 binary64) re)) (log.f64 #s(literal 1/2 binary64))))
(* -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/8 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64))) (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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/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 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (pow.f64 im #s(literal 4 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 (* (sqrt re) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 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 (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 (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 (sqrt.f64 #s(literal -1 binary64)) (*.f64 im im))) (sqrt.f64 re) (*.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)))))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/16 (* (* (pow im 4) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/32 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 3))))) (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt re))))) (pow re 3))) (* (sqrt (/ 1 re)) (* (sqrt -1) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 2 binary64) (/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #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 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (pow.f64 im #s(literal 4 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))
(* (* im (pow (sqrt -1) 2)) (sqrt (/ 1 re)))
(*.f64 (neg.f64 im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(* -1/2 (* (sqrt re) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* re (+ (* -1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 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 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 re))
(* -1 (* re (+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re)))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/8 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/32 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/32 (* (/ (* (pow im 4) (sqrt -1)) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (+ (* 1/64 (* (/ (* (pow im 4) (sqrt -1)) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/8 (* (/ (* (pow im 2) (sqrt -1)) (sqrt 2)) (sqrt re))))) (pow re 3))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/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 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal 1/128 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #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/8 binary64))) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (neg.f64 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 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) (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 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) (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 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) (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/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 (/.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))
(* (sqrt (/ 1 re)) (pow (sqrt -1) 2))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal -1 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 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 im im) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(* (pow im 2) (+ (* (pow im 2) (- (* (pow im 2) (+ (* -5/128 (/ (pow im 2) (pow re 7))) (* 1/16 (/ 1 (pow re 5))))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/128 binary64) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im))
(+ (log (* 2 re)) (* -2 (log im)))
(fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re)))
(+ (log (* 2 re)) (+ (* -2 (log im)) (* 1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re))))
(+ (log (* 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 im (/.f64 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 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re))))
(+ (log (* 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 im (/.f64 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 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re))))
(* -1 (+ (log (* 2 re)) (* -2 (log im))))
(neg.f64 (fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re))))
(+ (* -1 (+ (log (* 2 re)) (* -2 (log im)))) (* -1/4 (/ (pow im 2) (pow re 2))))
(-.f64 (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64)) (fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re))))
(+ (* -1 (+ (log (* 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 #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) (neg.f64 (fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re)))))
(+ (* -1 (+ (log (* 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 #s(literal -5/96 binary64) (*.f64 im (/.f64 im (pow.f64 re #s(literal 6 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) (neg.f64 (fma.f64 #s(literal -2 binary64) (log.f64 im) (log.f64 (*.f64 #s(literal 2 binary64) re)))))
(* im (+ (* -1/32 (* (/ (* (pow im 2) (sqrt 2)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (* (sqrt 1/2) (sqrt 2)))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ (sqrt 2) (sqrt 1/2)))) (* 1/4 (* (/ (* (pow im 2) (* (sqrt 2) (- (* 1/16 (/ 1 (pow re 5))) (* 1/256 (/ 1 (* (pow re 5) (pow (sqrt 1/2) 2))))))) (sqrt 1/2)) (sqrt re)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (/.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)))) (sqrt.f64 re) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* 1/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 (-.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 (*.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 im (/.f64 im (sqrt.f64 #s(literal 1/2 binary64))))) (sqrt.f64 re)) #s(literal -1/4 binary64))) (*.f64 im im))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* 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 #s(literal -1/16 binary64) (/.f64 (*.f64 (*.f64 im im) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (*.f64 (sqrt.f64 #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/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)))) (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 (-.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 (*.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 im (/.f64 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)
(* im (+ (* -1/32 (* (/ (pow im 2) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/32 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 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* 1/4 (* (/ (* (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 #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 im (/.f64 im (sqrt.f64 #s(literal 1/2 binary64))))) (sqrt.f64 re)) #s(literal 1/4 binary64) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 re)) (sqrt 1/2))) (* (pow im 2) (+ (* -1/32 (* (sqrt (/ 1 (pow re 5))) (/ 1 (sqrt 1/2)))) (* (pow im 2) (+ (* -1/4 (* (/ (* (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/4 (* (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/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)))) (sqrt.f64 #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)))) (*.f64 im (/.f64 im (sqrt.f64 #s(literal 1/2 binary64))))) (sqrt.f64 re)) #s(literal -1/4 binary64))) (*.f64 im im) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #s(literal 1/2 binary64))) #s(literal -1/32 binary64))) (*.f64 im im) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64))) 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 #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 #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 im (/.f64 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/128 binary64) (pow.f64 re #s(literal 5 binary64)))) (sqrt.f64 #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)))) (*.f64 im (/.f64 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 (* -1 (/ re im))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) im)
(* im (- (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))) (/ re im)))
(*.f64 (fma.f64 (*.f64 re (/.f64 re im)) (/.f64 #s(literal 1/2 binary64) im) (-.f64 #s(literal 1 binary64) (/.f64 re im))) im)
(* im (- (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))) (/ re im)))
(*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 re im)) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) (/.f64 re im)) im)
(+ (log (/ 1 im)) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im)))
(fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) (/.f64 #s(literal 1/2 binary64) im) (-.f64 (/.f64 re im) (log.f64 im)))
(+ (log (/ 1 im)) (+ (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))) (+ (* 1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (/ re im))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re) #s(literal 6 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/6 binary64) (fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) (/.f64 #s(literal 1/2 binary64) im) (-.f64 (/.f64 re im) (log.f64 im))))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2)))))
(fma.f64 (/.f64 #s(literal -1/2 binary64) im) (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) (-.f64 (log.f64 im) (/.f64 re im)))
(+ (* -1 (log (/ 1 im))) (+ (* -1 (/ re im)) (+ (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) (pow im 2))) (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) (pow im 3))))))
(+.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/2 binary64) im) (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) (/.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re) #s(literal 6 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) #s(literal -1/6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re im)) (log.f64 im))
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 re re)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/16 binary64) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (*.f64 (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 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) #s(literal 1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) im)
(* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) re)) (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (sqrt (/ 1 im)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) re (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)))) im)
(* im (+ (sqrt (/ 1 im)) (* -1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 (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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) #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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) #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)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (/ re im))))
(neg.f64 (fma.f64 (/.f64 re im) im im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1/2 (/ (pow re 2) im)) re) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 re (/.f64 re im)) #s(literal -1/2 binary64) (neg.f64 re)) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (- (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im)) re) im)))))
(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 (*.f64 re re) #s(literal 1/2 binary64))) (neg.f64 im)) re) (neg.f64 im)) im im))
(log (/ -1 im))
(log.f64 (/.f64 #s(literal -1 binary64) im))
(+ (log (/ -1 im)) (* -1 (/ re im)))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) im)) (/.f64 re im))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1/2 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) im)) (/.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) #s(literal -1/2 binary64) re) im))
(+ (log (/ -1 im)) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im)) (* 1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))))) im))) im)))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) im)) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re) #s(literal 6 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) im) #s(literal -1/6 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) #s(literal 1/2 binary64))) 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 (/ (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2))) im))) im)))
(-.f64 (/.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) im) #s(literal 1/2 binary64) (neg.f64 re)) (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ (* -1 re) (* -1 (/ (+ (* -1/2 (+ (* -2 (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))) (* -1 (pow re 2)))) (* 1/6 (/ (+ (* -6 (+ (* 1/2 (pow re 3)) (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2)))))) (+ (* 2 (pow re 3)) (* 6 (* re (+ (* -1 (pow re 2)) (* 1/2 (pow re 2))))))) im))) im))) im)))
(-.f64 (*.f64 #s(literal 1 binary64) (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/2 binary64))) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) re) #s(literal 6 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) im) #s(literal 1/6 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal -1/2 binary64)) #s(literal -2 binary64) (*.f64 (neg.f64 re) re)) #s(literal -1/2 binary64))) im) re) im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))) (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)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (*.f64 #s(literal -1/4 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64)))))) (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 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/16 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))) (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 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)))) (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)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64))))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 re re)) (sqrt.f64 im)) #s(literal 3/8 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))) (neg.f64 im))
(* -1/2 (* (sqrt im) (sqrt -1)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* -1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt -1)))))))
(*.f64 (-.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) #s(literal -1/4 binary64))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (sqrt im) (sqrt -1)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(*.f64 (fma.f64 (*.f64 (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 re re)) (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 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re re)) (sqrt.f64 im)) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))

rewrite310.0ms (4.7%)

Memory
-20.7MiB live, 232.7MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
050264
073224
1211201
2934195
08428195
Stop Event
iter limit
node limit
iter limit
Counts
22 → 540
Calls
Call 1
Inputs
(exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
(sqrt.f64 re)
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)))
#s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im)
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(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 (hypot.f64 im re) re)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) re))
Outputs
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.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 (hypot.f64 re im) re) (*.f64 (-.f64 (hypot.f64 re im) re) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 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 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (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 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) #s(literal -1/2 binary64))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) #s(literal -1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 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 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (+.f64 (hypot.f64 re im) re))
(/.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 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 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)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re im) #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 re im) #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 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)))) 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)))) #s(literal 1 binary64)))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (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 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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 (neg.f64 (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(/.f64 (-.f64 (hypot.f64 re im) re) #s(literal 1 binary64))
(neg.f64 (neg.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 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 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 (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 #s(literal -1 binary64) re (hypot.f64 re im))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 re im))
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(-.f64 (+.f64 (hypot.f64 re im) #s(literal 0 binary64)) re)
(-.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)) (/.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(-.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 1 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)))) #s(literal 1 binary64)))
(-.f64 (/.f64 (hypot.f64 re im) #s(literal 1 binary64)) 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 (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 #s(literal 0 binary64) (-.f64 re (hypot.f64 re im)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -1 binary64))) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))))
(exp.f64 (log.f64 (-.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 #s(literal -1/2 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) (log.f64 (exp.f64 #s(literal -1 binary64))))
(*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))))
(*.f64 #s(literal -1 binary64) (log.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) (log.f64 (-.f64 (hypot.f64 re im) re)))) (+.f64 #s(literal 0 binary64) (log.f64 (-.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) (log.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 #s(literal 0 binary64) (log.f64 (-.f64 (hypot.f64 re im) re))))))
(/.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))) (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))))) (-.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))))
(/.f64 (+.f64 (pow.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal 3 binary64)) (pow.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal 3 binary64))) (fma.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (-.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))) (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))))))
(neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 #s(literal -1/2 binary64) (log.f64 (-.f64 (hypot.f64 re im) re)) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))))
(fma.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) #s(literal -1/2 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (neg.f64 (-.f64 (hypot.f64 re im) re))))
(-.f64 #s(literal 0 binary64) (log.f64 (-.f64 (hypot.f64 re im) re)))
(+.f64 (-.f64 #s(literal 0 binary64) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (-.f64 #s(literal 0 binary64) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(+.f64 (log.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64))) (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (log.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(+.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))))
(+.f64 #s(literal 0 binary64) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (log.f64 (-.f64 (hypot.f64 re im) re)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (log.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) (log.f64 (+.f64 (hypot.f64 re im) re)))) (+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (*.f64 (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))) (+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) (log.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (+.f64 (hypot.f64 re im) re))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (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 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))))
(neg.f64 (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(fma.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal -1 binary64) (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(fma.f64 #s(literal -1 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) (*.f64 #s(literal -1 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (log.f64 (neg.f64 (+.f64 (hypot.f64 re im) re))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (+.f64 (hypot.f64 re im) re)))
(-.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(-.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(-.f64 #s(literal 0 binary64) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(+.f64 (*.f64 #s(literal -1 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))) (*.f64 #s(literal -1 binary64) (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))))
(+.f64 (neg.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))) (neg.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)))))
(+.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal -1 binary64)) (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (log.f64 (+.f64 (hypot.f64 re im) re))))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (log.f64 (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))))
(log.f64 (-.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (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 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (-.f64 (hypot.f64 re im) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (-.f64 (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)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 (neg.f64 re) #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 (neg.f64 re) #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 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 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re))) (neg.f64 im))
(*.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(*.f64 (/.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 (*.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 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 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (neg.f64 im) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re))))
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (/.f64 im #s(literal 2 binary64)))
(*.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 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal -1 binary64)) (*.f64 (sqrt.f64 re) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 im) (*.f64 (sqrt.f64 re) #s(literal -2 binary64)))
(/.f64 #s(literal -1/2 binary64) (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1/2 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sqrt.f64 re) #s(literal -2 binary64)) im))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))))
(neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re)))))
(neg.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re))))
(neg.f64 (*.f64 im (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re))))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
(neg.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) im))
(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 #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) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (pow.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 #s(literal -1/2 binary64) (neg.f64 (sqrt.f64 re)))
(/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(/.f64 #s(literal 1/2 binary64) (sqrt.f64 re))
(/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 re) #s(literal -2 binary64)))
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 re) #s(literal 2 binary64))))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re))))
(neg.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (*.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 #s(literal 1 binary64) (sqrt.f64 re))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(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 #s(literal 1 binary64) (pow.f64 re #s(literal -1/2 binary64)))
(/.f64 (sqrt.f64 re) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sqrt.f64 re)))
(sqrt.f64 re)
(-.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 re) #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 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re))) (neg.f64 im))
(*.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(*.f64 (/.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 (*.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 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 im #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 #s(literal 1/2 binary64) im)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (neg.f64 im) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re))))
(*.f64 #s(literal -1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) (/.f64 im #s(literal 2 binary64)))
(*.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 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 re #s(literal -1/2 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im) #s(literal 1 binary64))
(*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im)
(*.f64 #s(literal 1/2 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re))))
(*.f64 im (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) im)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal -1 binary64)) (*.f64 (sqrt.f64 re) #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (neg.f64 (sqrt.f64 re)))
(/.f64 (neg.f64 im) (*.f64 (sqrt.f64 re) #s(literal -2 binary64)))
(/.f64 #s(literal -1/2 binary64) (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))
(/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1/2 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sqrt.f64 re) #s(literal -2 binary64)) im))
(/.f64 im (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 (/.f64 (sqrt.f64 re) im) #s(literal 2 binary64))))
(neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 im (sqrt.f64 re)))))
(neg.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re))))
(neg.f64 (*.f64 im (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re))))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal 1/2 binary64)))
(neg.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 re)) im))
(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 #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 (neg.f64 im) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (neg.f64 im))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 im #s(literal 1/2 binary64))
(neg.f64 (*.f64 #s(literal -1/2 binary64) im))
(-.f64 #s(literal 0 binary64) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (/.f64 im (sqrt.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (/.f64 im (sqrt.f64 re)))))
#s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (/.f64 im (sqrt.f64 re))))
#s(approx (/ 1 (/ (sqrt re) im)) (/.f64 im (sqrt.f64 re)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) #s(literal -1 binary64)) im)
(*.f64 (*.f64 #s(literal 1 binary64) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64))) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 im (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))) (/.f64 im (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 re #s(literal -1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal -1/4 binary64)) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im (pow.f64 re #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 1/4 binary64))))
(*.f64 (pow.f64 re #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1/4 binary64)) im))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (*.f64 (neg.f64 im) #s(literal 1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (neg.f64 im))
(*.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(*.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(*.f64 (pow.f64 re #s(literal -1/2 binary64)) im)
(*.f64 #s(literal 1 binary64) (/.f64 im (sqrt.f64 re)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(*.f64 im (pow.f64 re #s(literal -1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (/.f64 (sqrt.f64 re) im))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 (sqrt.f64 re) im) (/.f64 (sqrt.f64 re) im)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(pow.f64 (/.f64 (sqrt.f64 re) im) #s(literal -1 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 im (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (*.f64 im #s(literal -1 binary64)) (neg.f64 (sqrt.f64 re)))
(/.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)) (/.f64 #s(literal -1 binary64) im))
(/.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal -1 binary64))
(/.f64 (/.f64 im (sqrt.f64 re)) #s(literal 1 binary64))
(/.f64 (neg.f64 im) (neg.f64 (sqrt.f64 re)))
(/.f64 (pow.f64 re #s(literal -1/2 binary64)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal -1 binary64)) (pow.f64 re #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))
(/.f64 #s(literal -1 binary64) (/.f64 (sqrt.f64 re) (neg.f64 im)))
(/.f64 im (sqrt.f64 re))
(neg.f64 (/.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)) #s(literal 1 binary64)))
(neg.f64 (/.f64 (neg.f64 im) (sqrt.f64 re)))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 re))) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 im) (sqrt.f64 re)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 re) im)) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #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 (*.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 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) #s(literal 1/2 binary64))
(*.f64 (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 (*.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 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 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 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.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(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))
(*.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))
(exp.f64 (*.f64 (log.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))) #s(literal 1/2 binary64)))
#s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.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 (hypot.f64 re im) re) (*.f64 (-.f64 (hypot.f64 re im) re) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 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 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (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 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re)))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(*.f64 #s(literal 1 binary64) (-.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (hypot.f64 re im) re) #s(literal 1 binary64))
(pow.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) #s(literal -1/2 binary64))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (exp.f64 #s(literal -1 binary64)) #s(literal -1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re)))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (+.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 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 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (+.f64 (hypot.f64 re im) re))
(/.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 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) (neg.f64 re))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.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 re im) (-.f64 im re))) re)) (*.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 im re))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 re #s(literal -1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64))) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 re #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) re)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 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)))) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re im) #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 re im) #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 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)))) 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)))) #s(literal 1 binary64)))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (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 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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 (neg.f64 (-.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (+.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (hypot.f64 re im) (neg.f64 re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.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 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(/.f64 (-.f64 (hypot.f64 re im) re) #s(literal 1 binary64))
(neg.f64 (neg.f64 (-.f64 (hypot.f64 re im) re)))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) (neg.f64 re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 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 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re)))) (neg.f64 re))
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 re #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (neg.f64 re))
(fma.f64 (hypot.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #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 (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 #s(literal -1 binary64) re (hypot.f64 re im))
(fma.f64 re #s(literal -1 binary64) (hypot.f64 re im))
(sqrt.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(-.f64 (+.f64 (hypot.f64 re im) #s(literal 0 binary64)) re)
(-.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)) (/.f64 (/.f64 (*.f64 re re) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(-.f64 (/.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 1 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)))) #s(literal 1 binary64)))
(-.f64 (/.f64 (hypot.f64 re im) #s(literal 1 binary64)) 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 (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 #s(literal 0 binary64) (-.f64 re (hypot.f64 re im)))
(-.f64 (hypot.f64 re im) re)
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal -1 binary64))) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re)))))
(exp.f64 (log.f64 (-.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 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64)) (sqrt.f64 (-.f64 (hypot.f64 re im) re))))
(*.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 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 (neg.f64 re) #s(literal 3/2 binary64))) (sqrt.f64 #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 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (hypot.f64 (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)) (pow.f64 (neg.f64 re) #s(literal 3/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 (-.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 #s(literal 1 binary64) (pow.f64 re #s(literal -1/4 binary64))) (pow.f64 re #s(literal -1/4 binary64)))
(*.f64 (sqrt.f64 (pow.f64 re #s(literal -1/2 binary64))) (sqrt.f64 (pow.f64 re #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (sqrt.f64 re) #s(literal -1/2 binary64)) (pow.f64 (sqrt.f64 re) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 re #s(literal -1/2 binary64)) #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 (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)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(pow.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 re #s(literal -1/4 binary64)) #s(literal 2 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 re #s(literal -1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (sqrt.f64 (neg.f64 re))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (neg.f64 re)))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 re)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 re))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 re)))
(neg.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 re)))
(sqrt.f64 (pow.f64 re #s(literal -1 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)))

eval118.0ms (1.8%)

Memory
21.2MiB live, 133.2MiB allocated
Compiler

Compiled 18 755 to 3 013 computations (83.9% saved)

prune44.0ms (0.7%)

Memory
-32.5MiB live, 49.9MiB allocated
Pruning

15 alts after pruning (5 fresh and 10 done)

PrunedKeptTotal
New5593562
Fresh022
Picked145
Done268
Total56215577
Accuracy
100.0%
Counts
577 → 15
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.0%
(*.f64 (*.f64 (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/4 binary64)))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
50.8%
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
82.3%
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
11.3%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
47.0%
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
76.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re))))))
76.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
51.1%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
46.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)))))
35.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
22.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) re)))))
22.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
22.5%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
22.2%
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1/2 binary64) (/.f64 (sqrt.f64 re) im)))
22.4%
#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 988 to 421 computations (57.4% saved)

regimes87.0ms (1.3%)

Memory
24.4MiB live, 102.3MiB allocated
Counts
30 → 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 #s(literal 1/2 binary64) im) (sqrt.f64 re)))
(*.f64 #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 im (sqrt.f64 re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) #s(approx (/ 1 (/ (sqrt re) im)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 im im) re))))
(*.f64 (sqrt.f64 #s(approx (* (- (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 im im) re))) #s(literal 1/2 binary64))
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 #s(literal 1/2 binary64) (/.f64 (sqrt.f64 re) im)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 re) im))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 (/.f64 #s(literal 2 binary64) 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) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) im) (sqrt.f64 re)) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 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 (sqrt.f64 #s(literal 1/2 binary64)) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (pow.f64 re #s(literal -1/2 binary64)) im)))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #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)))))
#s(approx (* 1/2 (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re)))) (*.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))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (- (sqrt (+ (* re re) (* im im))) re))) (*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))) im)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 (*.f64 (*.f64 (sqrt.f64 (-.f64 (hypot.f64 re im) re)) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (-.f64 (hypot.f64 re im) re))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (exp.f64 (*.f64 (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))) #s(literal -1 binary64))))))
(*.f64 (*.f64 (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/4 binary64)))) (pow.f64 #s(literal 2 binary64) #s(literal 1/4 binary64))) #s(literal 1/2 binary64))
Outputs
#s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (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:

35.0ms
im
10.0ms
(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
9.0ms
re
8.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
8.0ms
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
AccuracySegmentsBranch
91.0%2re
82.3%1im
90.5%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.5%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
91.2%2(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
91.2%2(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
82.3%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes77.0ms (1.2%)

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

7 calls:

25.0ms
(*.f64 im im)
20.0ms
(*.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 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Results
AccuracySegmentsBranch
73.5%5im
70.0%3(*.f64 im im)
72.7%3(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
72.7%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
81.7%4re
73.4%3(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
73.4%3(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes6.0ms (0.1%)

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

1 calls:

5.0ms
re
Results
AccuracySegmentsBranch
79.3%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes3.0ms (0%)

Memory
4.9MiB live, 4.9MiB 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
79.3%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes41.0ms (0.6%)

Memory
-13.3MiB live, 26.4MiB 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 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)))))
Calls

7 calls:

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

Compiled 55 to 45 computations (18.2% saved)

regimes6.0ms (0.1%)

Memory
12.5MiB live, 12.5MiB allocated
Counts
3 → 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))
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

3 calls:

2.0ms
re
2.0ms
im
2.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
67.1%2re
66.9%2im
66.9%2(*.f64 im im)
Compiler

Compiled 5 to 7 computations (-40% saved)

regimes23.0ms (0.3%)

Memory
-13.8MiB live, 23.9MiB 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:

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

Compiled 18 to 17 computations (5.6% saved)

bsearch86.0ms (1.3%)

Memory
28.9MiB live, 107.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
31.0ms
2.765327074276617e+20
3.671541934166345e+35
36.0ms
-2.802165467499027e-147
-3.490655715917343e-162
13.0ms
-5.284039365375177e+104
-4.3812281855412965e+101
Samples
46.0ms364×0valid
7.0ms39×2valid
5.0ms21×3valid
3.0ms24×1valid
Compiler

Compiled 1 180 to 936 computations (20.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 46.0ms
ival-hypot: 28.0ms (60.8% of total)
ival-mult: 6.0ms (13% of total)
ival-sub: 5.0ms (10.9% of total)
ival-sqrt: 4.0ms (8.7% of total)
adjust: 2.0ms (4.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch90.0ms (1.4%)

Memory
-23.4MiB live, 55.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
51.0ms
2.765327074276617e+20
3.671541934166345e+35
35.0ms
-1122998883183995100.0
-2869736.880808757
Samples
33.0ms233×0valid
31.0ms15×3valid
6.0ms31×2valid
3.0ms25×1valid
Compiler

Compiled 808 to 654 computations (19.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 65.0ms
ival-hypot: 35.0ms (54% of total)
ival-sqrt: 21.0ms (32.4% of total)
ival-mult: 4.0ms (6.2% of total)
ival-sub: 2.0ms (3.1% of total)
adjust: 1.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch3.0ms (0.1%)

Memory
6.7MiB live, 6.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.765327074276617e+20
3.671541934166345e+35
1.0ms
-1122998883183995100.0
-2869736.880808757
Compiler

Compiled 808 to 654 computations (19.1% saved)

bsearch30.0ms (0.4%)

Memory
-10.3MiB live, 33.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
28.0ms
5.884518352095021e-22
3.3509090233384037e-13
Samples
17.0ms113×0valid
3.0ms18×2valid
2.0ms13×1valid
Compiler

Compiled 360 to 293 computations (18.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-sub: 10.0ms (55.4% of total)
ival-hypot: 4.0ms (22.2% of total)
ival-mult: 2.0ms (11.1% of total)
adjust: 1.0ms (5.5% of total)
ival-sqrt: 1.0ms (5.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch15.0ms (0.2%)

Memory
23.0MiB live, 23.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
-1122998883183995100.0
-2869736.880808757
Samples
8.0ms128×0valid
Compiler

Compiled 398 to 334 computations (16.1% saved)

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

simplify61.0ms (0.9%)

Memory
-19.2MiB live, 57.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
082378
1102378
2111378
3115378
4117378
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (-.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 #s(literal 1/2 binary64) im) (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 -33999999999999998473698596403661482134119280257189840057735636944866201213450891644571638493571329294336 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 -4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) (if (<=.f64 re #s(literal 94999999999999992741102616576 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -34000000000 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 2999999999999999949668352 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -34000000000 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 2999999999999999949668352 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 im #s(literal 5815372481559007/166153499473114484112975882535043072 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 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))))
(if (<=.f64 re #s(literal -1020000000 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 (-.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 #s(literal 1/2 binary64) im) (sqrt.f64 re))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) re) #s(literal 0 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))) (*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -33999999999999998473698596403661482134119280257189840057735636944866201213450891644571638493571329294336 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 -4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))) (if (<=.f64 re #s(literal 94999999999999992741102616576 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -33999999999999998473698596403661482134119280257189840057735636944866201213450891644571638493571329294336 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal -4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 94999999999999992741102616576 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re))))))
(if (<=.f64 re #s(literal -34000000000 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 2999999999999999949668352 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -34000000000 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2999999999999999949668352 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -34000000000 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 2999999999999999949668352 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 -34000000000 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2999999999999999949668352 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* (sqrt (* (- (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (*.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 re)) im))))
(if (<=.f64 im #s(literal 5815372481559007/166153499473114484112975882535043072 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 (*.f64 #s(literal 2 binary64) #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re))))))
(if (<=.f64 im #s(literal 5815372481559007/166153499473114484112975882535043072 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (- (sqrt (+ (* re re) (* im im))) re) (-.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -1020000000 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))))
(if (<=.f64 re #s(literal -1020000000 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))))
(*.f64 (sqrt.f64 #s(approx (* 2 (- (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal -4 binary64) re))) #s(literal 1/2 binary64))

soundness648.0ms (9.8%)

Memory
17.3MiB live, 542.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05513021
118142867
263802852
081992692
049274
075239
1204217
2871198
08502198
01265
02065
15665
237465
3419265
0839138
05512733
117822566
264172549
081352421
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 908 to 420 computations (53.7% saved)

preprocess68.0ms (1%)

Memory
-8.3MiB live, 146.7MiB allocated
Remove

(abs im)

Compiler

Compiled 966 to 316 computations (67.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...