math.sqrt on complex, real part

Time bar (total: 6.1s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze92.0ms (1.5%)

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

Compiled 17 to 11 computations (35.3% saved)

sample1.8s (28.9%)

Memory
42.9MiB live, 1 896.3MiB allocated
Samples
469.0ms6 203×0valid
391.0ms433×3valid
259.0ms805×2valid
166.0ms815×1valid
Precisions
Click to see histograms. Total time spent on operations: 995.0ms
adjust: 325.0ms (32.7% of total)
ival-hypot: 304.0ms (30.5% of total)
ival-mult: 177.0ms (17.8% of total)
ival-add: 93.0ms (9.3% of total)
ival-sqrt: 78.0ms (7.8% of total)
exact: 8.0ms (0.8% of total)
ival-true: 6.0ms (0.6% of total)
ival-assert: 3.0ms (0.3% of total)
Bogosity

explain337.0ms (5.5%)

Memory
18.6MiB live, 333.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1310-1(-1.288280888853854e-158 -3.163871515208683e-182)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
390-0-(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
230-0-(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 im im)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1210
(+.f64 (*.f64 re re) (*.f64 im im))overflow121
(*.f64 re re)overflow68
(*.f64 im im)overflow73
+.f64(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation390
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue230
(+.f64 (*.f64 re re) (*.f64 im im))underflow9
(*.f64 im im)underflow54
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow6
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow29
(*.f64 re re)underflow60
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow29
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue90
(+.f64 (*.f64 re re) (*.f64 im im))underflow9
(*.f64 re re)underflow60
(*.f64 im im)underflow54
Confusion
Predicted +Predicted -
+1600
-096
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+16000
-0096
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
096
1128
232
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
67.0ms60×1valid
62.0ms378×0valid
13.0ms48×2valid
9.0ms26×3valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 106.0ms
ival-hypot: 71.0ms (66.8% of total)
ival-mult: 15.0ms (14.1% of total)
ival-add: 10.0ms (9.4% of total)
ival-sqrt: 5.0ms (4.7% of total)
adjust: 4.0ms (3.8% of total)
ival-true: 1.0ms (0.9% of total)
exact: 1.0ms (0.9% of total)
ival-assert: 0.0ms (0% of total)

preprocess123.0ms (2%)

Memory
-13.4MiB live, 29.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03075
19475
216975
325975
439675
552375
664575
774575
877375
01215
02015
13015
23215
03210
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Symmetry

(abs im)

Compiler

Compiled 15 to 12 computations (20% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
40.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))))
Compiler

Compiled 15 to 12 computations (20% saved)

simplify3.0ms (0.1%)

Memory
3.3MiB live, 3.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01275
02075
13075
23275
03249
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
(+.f64 (hypot.f64 im re) re)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 im re)
(+.f64 (*.f64 re re) (*.f64 im im))
(fma.f64 im im (*.f64 re re))
(*.f64 re re)
re
(*.f64 im im)
im

localize123.0ms (2%)

Memory
5.2MiB live, 44.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
accuracy5.196690805181685
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy9.02718288342144
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy30.386818938229773
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
17.0ms189×0valid
6.0ms24×2valid
5.0ms30×1valid
5.0ms13×3valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0ms
ival-hypot: 8.0ms (35.7% of total)
ival-mult: 7.0ms (31.2% of total)
ival-add: 3.0ms (13.4% of total)
adjust: 2.0ms (8.9% of total)
ival-sqrt: 2.0ms (8.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series113.0ms (1.9%)

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

6 calls:

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

simplify192.0ms (3.1%)

Memory
2.1MiB live, 144.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite160.0ms (2.6%)

Memory
11.8MiB live, 206.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

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

eval57.0ms (0.9%)

Memory
-9.4MiB live, 112.5MiB allocated
Compiler

Compiled 11 518 to 2 381 computations (79.3% saved)

prune16.0ms (0.3%)

Memory
2.1MiB live, 40.2MiB allocated
Pruning

14 alts after pruning (14 fresh and 0 done)

PrunedKeptTotal
New38214396
Fresh000
Picked101
Done000
Total38314397
Accuracy
91.9%
Counts
397 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.9%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
77.5%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
77.0%
(*.f64 #s(literal 1/2 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)))
40.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
55.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
16.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))))
53.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
13.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))))
54.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
20.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
53.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
53.3%
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
24.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 538 to 410 computations (23.8% saved)

simplify114.0ms (1.9%)

Memory
-6.8MiB live, 150.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

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

Useful iterations: 5 (0.0ms)

IterNodesCost
038281
064225
197225
2124225
3157225
4193221
5296213
6407213
7872213
81990213
93098213
104070213
117103213
08081213
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(+.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
#s(literal 2 binary64)
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im
Outputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(+.f64 (hypot.f64 im re) re)
(+.f64 (hypot.f64 re im) re)
(hypot.f64 im re)
(hypot.f64 re im)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 re im) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 re im) #s(literal 2 binary64))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (+.f64 re im) #s(literal 2 binary64)))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 (+.f64 re im) #s(literal 2 binary64))
(fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(+.f64 (hypot.f64 re im) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 re im)
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im

localize158.0ms (2.6%)

Memory
-16.1MiB live, 147.5MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
accuracy0.0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
accuracy0.00390625
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
accuracy14.422079468291422
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
accuracy0.0
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
accuracy3.7690919100786453
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
accuracy11.811729717369024
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
accuracy0.0
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
accuracy0.0
(neg.f64 re)
accuracy0.00390625
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
accuracy31.313102773731412
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
accuracy0.0
(sqrt.f64 re)
accuracy16.416929446763476
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
accuracy0.0
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy0.0
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.0
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy0.00390625
(+.f64 (hypot.f64 im re) re)
Samples
72.0ms127×0valid
25.0ms129×0invalid
Compiler

Compiled 570 to 65 computations (88.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 80.0ms
ival-sqrt: 43.0ms (53.5% of total)
ival-hypot: 19.0ms (23.6% of total)
ival-mult: 11.0ms (13.7% of total)
ival-add: 4.0ms (5% of total)
ival-div: 2.0ms (2.5% of total)
ival-neg: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series12.0ms (0.2%)

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

6 calls:

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

simplify155.0ms (2.5%)

Memory
20.0MiB live, 208.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

rewrite220.0ms (3.6%)

Memory
5.8MiB live, 241.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038244
064188
1189188
2984188
08324188
Stop Event
iter limit
node limit
iter limit
Counts
21 → 451
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(+.f64 (hypot.f64 im re) re)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
Outputs
(*.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 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 re im))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #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 (-.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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 (-.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 re im) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 re im))
(fma.f64 #s(literal 1 binary64) re (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(fma.f64 (neg.f64 re) #s(literal -1 binary64) (hypot.f64 re im))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 re #s(literal 1 binary64) (hypot.f64 re im))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 re #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1/4 binary64))
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(*.f64 (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (neg.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(fma.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(*.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))) (+.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (*.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))) (neg.f64 (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (*.f64 re re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 2 binary64))) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal 3 binary64)))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (*.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (*.f64 re re))) (*.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (-.f64 (*.f64 re re) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 re re (*.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64)))) (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(neg.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))) (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64))))))
(fma.f64 #s(literal -1 binary64) (neg.f64 re) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 #s(literal 1 binary64) re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(fma.f64 (neg.f64 re) #s(literal -1 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(fma.f64 re #s(literal 1 binary64) #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))) (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))))
(-.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)))
(+.f64 (/.f64 (pow.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) #s(literal 2 binary64)) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re)
(+.f64 re #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)))
(*.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)) im) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)) im) (pow.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64))) (pow.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)) #s(literal -1 binary64)))
(*.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64))) (pow.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (/.f64 re im) im im) #s(literal 2 binary64))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 re im)) (*.f64 #s(literal 2 binary64) im))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 im (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im)) (*.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im))) (-.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 #s(literal 2 binary64) im)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im)) (*.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im))) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im)))
(/.f64 (-.f64 (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))) (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64)))) (-.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))))) (-.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im)) (*.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 #s(literal 2 binary64) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im)) (*.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im)))))
(/.f64 (+.f64 (pow.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))) (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)) im)) (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (neg.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)) im)) (neg.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64)))))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)))) (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(/.f64 (neg.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)))) (neg.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)) im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)) im) (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))))
(/.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64))) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)))
(/.f64 (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64))) (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))) (*.f64 (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal -2 binary64)) (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) #s(literal -4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (+.f64 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 1 binary64)) #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal -4 binary64))) (*.f64 im (fma.f64 (pow.f64 (/.f64 im re) #s(literal -3 binary64)) #s(literal 8 binary64) #s(literal 8 binary64)))))
(/.f64 im (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))))
(fma.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im (*.f64 #s(literal 2 binary64) im))
(fma.f64 #s(literal 2 binary64) im (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im))
(fma.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64)))
(fma.f64 im #s(literal 2 binary64) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im) (*.f64 #s(literal 2 binary64) im))
(+.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im))
(+.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im #s(literal 2 binary64)))
(+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
(*.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 #s(literal 2 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 re im) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 re im))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #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 (-.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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 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 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 (-.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 re im) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))) (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (*.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re))))
(/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 re im) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 re im)) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 re im))
(fma.f64 #s(literal 1 binary64) re (hypot.f64 re im))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(fma.f64 (neg.f64 re) #s(literal -1 binary64) (hypot.f64 re im))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 re #s(literal 1 binary64) (hypot.f64 re im))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 re im) re))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(*.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re #s(literal 0 binary64))))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) re)) (neg.f64 re))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 re) (neg.f64 re))) re)
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 re) (neg.f64 re)) (*.f64 #s(literal 0 binary64) (neg.f64 re)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re #s(literal 0 binary64))))
(/.f64 (*.f64 (neg.f64 re) re) re)
(/.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re #s(literal 0 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 re) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re #s(literal 0 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(neg.f64 re)
(-.f64 (/.f64 #s(literal 0 binary64) re) (/.f64 (*.f64 re re) re))
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 re re #s(literal 0 binary64))) (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 re re #s(literal 0 binary64))))
(-.f64 #s(literal 0 binary64) re)
(+.f64 #s(literal 0 binary64) (neg.f64 re))
(*.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)))
(*.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 re im) (-.f64 re im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 (hypot.f64 re im) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (*.f64 (neg.f64 (+.f64 im re)) (-.f64 im re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (*.f64 (neg.f64 (+.f64 re im)) (-.f64 re im))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 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 im re) (-.f64 im re))) (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64)))) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.f64 (-.f64 (pow.f64 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 (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fabs.f64 (hypot.f64 re im))
(hypot.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 re)))
(hypot.f64 (exp.f64 (log.f64 im)) re)
(hypot.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 im)))
(hypot.f64 (exp.f64 (log.f64 re)) im)
(hypot.f64 re (exp.f64 (log.f64 im)))
(hypot.f64 re im)
(hypot.f64 im (exp.f64 (log.f64 re)))
(hypot.f64 im re)
(exp.f64 (log.f64 (hypot.f64 re im)))

eval111.0ms (1.8%)

Memory
-10.5MiB live, 150.8MiB allocated
Compiler

Compiled 14 515 to 2 380 computations (83.6% saved)

prune18.0ms (0.3%)

Memory
-21.5MiB live, 52.1MiB allocated
Pruning

14 alts after pruning (9 fresh and 5 done)

PrunedKeptTotal
New4368444
Fresh819
Picked055
Done000
Total44414458
Accuracy
91.9%
Counts
458 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.0%
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
76.9%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
77.5%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
55.3%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
13.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
20.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
53.3%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
40.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
16.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))))
54.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
24.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 454 to 345 computations (24% saved)

simplify7.0ms (0.1%)

Memory
18.5MiB live, 18.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 2 (0.0ms)

IterNodesCost
036301
059261
179257
2106255
3135255
4143255
5144255
0144255
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(+.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
#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 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 im)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
#s(literal 1/2 binary64)
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)
Outputs
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #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 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.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
#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 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(sqrt.f64 im)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 re im)
re
im
#s(literal 2 binary64)
(*.f64 #s(literal 2 binary64) im)
#s(literal 1/2 binary64)
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(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
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(literal 1/2 binary64)

localize160.0ms (2.6%)

Memory
3.6MiB live, 198.4MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.47398378907376815
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
accuracy5.204332524903802
(sqrt.f64 (+.f64 (hypot.f64 re im) re))
accuracy9.02718288342144
(+.f64 (hypot.f64 re im) re)
accuracy0.0
(*.f64 #s(literal 2 binary64) im)
accuracy0.0625
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
accuracy5.196690805181685
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
accuracy29.90232744819515
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
accuracy0.0
(sqrt.f64 im)
accuracy0.0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.4801750488422102
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
accuracy29.60365887403006
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
accuracy0.0
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
accuracy0.0
(*.f64 #s(literal 2 binary64) im)
accuracy5.196690805181685
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy29.904374589484235
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.00390625
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
accuracy0.45931625976844204
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
accuracy6.938897284157405
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))
accuracy9.02718288342144
(+.f64 (hypot.f64 re im) re)
Samples
47.0ms189×0valid
22.0ms30×1valid
16.0ms24×2valid
12.0ms13×3valid
Compiler

Compiled 603 to 66 computations (89.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 68.0ms
ival-hypot: 17.0ms (25.1% of total)
ival-mult: 16.0ms (23.6% of total)
ival-sqrt: 10.0ms (14.8% of total)
ival-pow: 7.0ms (10.3% of total)
ival-add: 6.0ms (8.9% of total)
adjust: 4.0ms (5.9% of total)
ival-pow2: 4.0ms (5.9% of total)
ival-div: 2.0ms (3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series36.0ms (0.6%)

Memory
7.2MiB live, 81.6MiB allocated
Counts
21 → 164
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(sqrt.f64 im)
Outputs
(* (sqrt im) (sqrt 2))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(pow (* 2 im) 1/4)
(+ (* 1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(+ (* re (+ (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)) (* 1/4 (pow (/ 2 (pow im 3)) 1/4)))) (pow (* 2 im) 1/4))
(+ (* re (+ (* 1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* -5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)) (* 1/32 (pow (/ 2 (pow im 7)) 1/4)))))) (pow (* 2 im) 1/4))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 2 (sqrt re))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(/ (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)))))
(* (sqrt re) (sqrt 2))
(* re (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2)))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(* -1 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* (pow re 2) (+ (* -1 (/ (- (* -2 (/ im re)) 2) re)) (/ 1 im)))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(pow (* 4 re) 1/4)
(+ (* 1/16 (* (pow (/ 4 (pow re 7)) 1/4) (pow im 2))) (pow (* 4 re) 1/4))
(+ (* (pow im 2) (+ (* -11/512 (* (pow (/ 4 (pow re 15)) 1/4) (pow im 2))) (* 1/16 (pow (/ 4 (pow re 7)) 1/4)))) (pow (* 4 re) 1/4))
(+ (* (pow im 2) (+ (* 1/16 (pow (/ 4 (pow re 7)) 1/4)) (* (pow im 2) (+ (* -11/512 (pow (/ 4 (pow re 15)) 1/4)) (* 95/8192 (* (pow (/ 4 (pow re 23)) 1/4) (pow im 2))))))) (pow (* 4 re) 1/4))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(/ (+ (* 2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* 2 im) (* 2 re))) (pow re 2)) im)
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(* im (+ (* -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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 im)
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
Calls

6 calls:

TimeVariablePointExpression
9.0ms
re
@-inf
((pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) (* (pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) 1/2) (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (sqrt 2) (sqrt im)) (sqrt 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (+ (/ re im) 2) re) (* 2 im)) (* (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) 1/2) (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (sqrt im))
7.0ms
im
@-inf
((pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) (* (pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) 1/2) (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (sqrt 2) (sqrt im)) (sqrt 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (+ (/ re im) 2) re) (* 2 im)) (* (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) 1/2) (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (sqrt im))
5.0ms
im
@inf
((pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) (* (pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) 1/2) (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (sqrt 2) (sqrt im)) (sqrt 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (+ (/ re im) 2) re) (* 2 im)) (* (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) 1/2) (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (sqrt im))
4.0ms
re
@0
((pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) (* (pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) 1/2) (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (sqrt 2) (sqrt im)) (sqrt 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (+ (/ re im) 2) re) (* 2 im)) (* (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) 1/2) (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (sqrt im))
4.0ms
im
@0
((pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) (* (pow (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) 2) 1/2) (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (sqrt 2) (sqrt im)) (sqrt 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* (+ (/ re im) 2) re) (* 2 im)) (* (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) 1/2) (* (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt 2)) (sqrt (+ (sqrt (+ (* re re) (* im im))) re)) (+ (sqrt (+ (* re re) (* im im))) re) (sqrt im))

simplify246.0ms (4%)

Memory
-9.6MiB live, 283.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09385018
129984637
083134404
Stop Event
iter limit
node limit
Counts
164 → 163
Calls
Call 1
Inputs
(* (sqrt im) (sqrt 2))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (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/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(pow (* 2 im) 1/4)
(+ (* 1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(+ (* re (+ (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)) (* 1/4 (pow (/ 2 (pow im 3)) 1/4)))) (pow (* 2 im) 1/4))
(+ (* re (+ (* 1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* -5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)) (* 1/32 (pow (/ 2 (pow im 7)) 1/4)))))) (pow (* 2 im) 1/4))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(sqrt im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(+ (sqrt im) (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 2 (sqrt re))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(/ (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)))))
(* (sqrt re) (sqrt 2))
(* re (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2)))))
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(* -1 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* (pow re 2) (+ (* -1 (/ (- (* -2 (/ im re)) 2) re)) (/ 1 im)))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(pow (* 4 re) 1/4)
(+ (* 1/16 (* (pow (/ 4 (pow re 7)) 1/4) (pow im 2))) (pow (* 4 re) 1/4))
(+ (* (pow im 2) (+ (* -11/512 (* (pow (/ 4 (pow re 15)) 1/4) (pow im 2))) (* 1/16 (pow (/ 4 (pow re 7)) 1/4)))) (pow (* 4 re) 1/4))
(+ (* (pow im 2) (+ (* 1/16 (pow (/ 4 (pow re 7)) 1/4)) (* (pow im 2) (+ (* -11/512 (pow (/ 4 (pow re 15)) 1/4)) (* 95/8192 (* (pow (/ 4 (pow re 23)) 1/4) (pow im 2))))))) (pow (* 4 re) 1/4))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(/ (+ (* 2 (* im re)) (pow re 2)) im)
(/ (+ (* im (+ (* 2 im) (* 2 re))) (pow re 2)) im)
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(* im (+ (* -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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(* im (+ (sqrt (/ 1 im)) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (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/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(* -1 (* (sqrt im) (sqrt -1)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(* -1 im)
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
Outputs
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(fma.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/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 re #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (/.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 (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (fma.f64 re (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64))))) re (/.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)))
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/16 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/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(pow (* 2 im) 1/4)
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64))
(+ (* 1/4 (* (pow (/ 2 (pow im 3)) 1/4) re)) (pow (* 2 im) 1/4))
(fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal 1/4 binary64)) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(+ (* re (+ (* 1/32 (* (pow (/ 2 (pow im 7)) 1/4) re)) (* 1/4 (pow (/ 2 (pow im 3)) 1/4)))) (pow (* 2 im) 1/4))
(fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 7 binary64))) #s(literal 1/4 binary64)) re) #s(literal 1/32 binary64) (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal 1/4 binary64))) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(+ (* re (+ (* 1/4 (pow (/ 2 (pow im 3)) 1/4)) (* re (+ (* -5/128 (* (pow (/ 2 (pow im 11)) 1/4) re)) (* 1/32 (pow (/ 2 (pow im 7)) 1/4)))))) (pow (* 2 im) 1/4))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 11 binary64))) #s(literal 1/4 binary64)) re) #s(literal -5/128 binary64) (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 7 binary64))) #s(literal 1/4 binary64)) #s(literal 1/32 binary64))) re (*.f64 (pow.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/4 binary64)) #s(literal 1/4 binary64))) re (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 im re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/2 (* (sqrt (/ 1 im)) re)))
(fma.f64 (*.f64 re #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) re)) (* 1/2 (sqrt (/ 1 im))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (sqrt.f64 im))
(+ (sqrt im) (* re (+ (* 1/2 (sqrt (/ 1 im))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) re)) (* 1/8 (sqrt (/ 1 (pow im 3)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (sqrt.f64 im))
im
(+ im re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re im)
(* 2 (sqrt re))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) #s(literal -5/64 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(*.f64 #s(literal 1 binary64) (sqrt.f64 re))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) re)
(exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))))
(+ (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/24576 (pow im 6)) (+ (* 1/2880 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/1536 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(fma.f64 (/.f64 #s(literal 1/16 binary64) re) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 im im)) re) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/1536 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64))) (*.f64 im im) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) #s(literal 1/2880 binary64) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/24576 binary64)))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))))
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re)
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/32 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(/ (pow re 2) im)
(*.f64 (/.f64 re im) re)
(* (pow re 2) (+ (/ 1 im) (* 2 (/ 1 re))))
(*.f64 (+.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 1 binary64) im)) (*.f64 re re))
(* (pow re 2) (+ (* 2 (/ im (pow re 2))) (+ (/ 1 im) (* 2 (/ 1 re)))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 #s(literal 2 binary64) re) (+.f64 (/.f64 #s(literal 2 binary64) re) (/.f64 #s(literal 1 binary64) im))) (*.f64 re re))
(* (sqrt re) (sqrt 2))
(*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64)))
(* re (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
(* re (+ (* -1/16 (* (/ (pow im 4) (sqrt 2)) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 3)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (sqrt 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal 2 binary64)) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64))))) re)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64)) re)
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) re)
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (*.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (/.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 5 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 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 5 binary64))) #s(literal 9/128 binary64) (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(+ (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/16 (/ (* (pow im 2) (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/1536 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/24576 (pow im 6)) (* 1/2880 (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))))))) (pow re 6)) (/ (* (exp (* 1/4 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/512 (pow im 4)) (* 1/96 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/1536 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (*.f64 im im) (fma.f64 (fma.f64 (/.f64 #s(literal -720 binary64) im) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) im) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/4 binary64))) #s(literal 1/2880 binary64) (*.f64 #s(literal -1/24576 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (neg.f64 re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(/.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (pow re 2) (+ (* -1 (/ (- (* -2 (/ im re)) 2) re)) (/ 1 im)))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 (fma.f64 (/.f64 im re) #s(literal -2 binary64) #s(literal -2 binary64)) re)) (*.f64 re re))
(* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 1/2 binary64)))
(+ (* 1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/16 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 1/2 binary64))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 im (sqrt.f64 #s(literal 1/2 binary64))) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (sqrt -1)) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (sqrt -1)) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (sqrt -1)) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (sqrt 1/2))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal -1 binary64)))) im (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -5/64 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 21/512 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/64 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (*.f64 re re))))) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 #s(literal 1 binary64) (sqrt.f64 re)))
(pow (* 4 re) 1/4)
(pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1/4 binary64))
(+ (* 1/16 (* (pow (/ 4 (pow re 7)) 1/4) (pow im 2))) (pow (* 4 re) 1/4))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/16 binary64)) (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 7 binary64))) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1/4 binary64)))
(+ (* (pow im 2) (+ (* -11/512 (* (pow (/ 4 (pow re 15)) 1/4) (pow im 2))) (* 1/16 (pow (/ 4 (pow re 7)) 1/4)))) (pow (* 4 re) 1/4))
(fma.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 15 binary64))) #s(literal 1/4 binary64)) #s(literal -11/512 binary64)) im) im (*.f64 (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 7 binary64))) #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 im im) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1/4 binary64)))
(+ (* (pow im 2) (+ (* 1/16 (pow (/ 4 (pow re 7)) 1/4)) (* (pow im 2) (+ (* -11/512 (pow (/ 4 (pow re 15)) 1/4)) (* 95/8192 (* (pow (/ 4 (pow re 23)) 1/4) (pow im 2))))))) (pow (* 4 re) 1/4))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal 95/8192 binary64) (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 23 binary64))) #s(literal 1/4 binary64))) im) im (*.f64 (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 15 binary64))) #s(literal 1/4 binary64)) #s(literal -11/512 binary64))) (*.f64 im im) (*.f64 (pow.f64 (/.f64 #s(literal 4 binary64) (pow.f64 re #s(literal 7 binary64))) #s(literal 1/4 binary64)) #s(literal 1/16 binary64))) (*.f64 im im) (pow.f64 (*.f64 #s(literal 4 binary64) re) #s(literal 1/4 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 5 binary64))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (*.f64 re re))))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(/ (+ (* 2 (* im re)) (pow re 2)) im)
(/.f64 (*.f64 re (fma.f64 #s(literal 2 binary64) im re)) im)
(/ (+ (* im (+ (* 2 im) (* 2 re))) (pow re 2)) im)
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (+.f64 im re)) im (*.f64 re re)) im)
(+ (* 1/4 (* (/ (pow im 2) (sqrt 2)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt 2)))
(fma.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* -1/2 (* (/ (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt 2)) (sqrt (/ 1 re)))) (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (sqrt re) (sqrt 2)) (* (pow im 2) (+ (* 1/4 (* (sqrt (/ 1 (pow re 3))) (/ 1 (sqrt 2)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (sqrt 2)))) (* 1/2 (* (/ (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt 2)) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (*.f64 re re)))) (*.f64 im im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) #s(literal 1/2 binary64) (*.f64 (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 im im) (*.f64 (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 5 binary64))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 re 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) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re 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) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 re (sqrt.f64 #s(literal 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 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(fma.f64 (*.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)) im) (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) (pow im 3)) (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) (+.f64 (/.f64 (fma.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) #s(literal 1/24 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 #s(literal 1/384 binary64) (pow.f64 re #s(literal 3 binary64))))) (pow.f64 im #s(literal 3 binary64))) (/.f64 (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)) (*.f64 im im))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))))
(* im (+ 2 (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (sqrt (/ 1 im)) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (sqrt (/ 1 im)) (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (pow re 2))) (* 1/2 (* (sqrt (/ 1 (pow im 3))) re))))))
(*.f64 (fma.f64 (*.f64 (*.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 #s(literal 1/2 binary64) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (*.f64 (/.f64 re im) (/.f64 re im)) #s(literal 1/2 binary64) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (/.f64 re im) (/.f64 re im)) #s(literal 1/2 binary64) (/.f64 re im))) 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 (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (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 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (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)) (fma.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (fma.f64 (*.f64 re re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re 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 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -1 binary64)))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -1 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/16 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/4 (/ (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) im) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64))) (neg.f64 im))) im))
(+ (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/384 (pow re 3)) (+ (* 1/32 (* re (+ (* -1 (pow re 2)) (pow re 2)))) (* 1/24 (+ (* -3 (pow re 3)) (* 2 (pow re 3))))))) im)) (* (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/32 (pow re 2)) (* 1/8 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/4 (* re (exp (* 1/4 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))) re (/.f64 (fma.f64 (neg.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))) (/.f64 (fma.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) #s(literal 1/24 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 #s(literal 1/384 binary64) (pow.f64 re #s(literal 3 binary64))))) im) (*.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (*.f64 re re) #s(literal 1/32 binary64) #s(literal 0 binary64)))) (neg.f64 im))) im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (neg.f64 im) (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)) #s(literal 3/8 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(* -1 (* (sqrt im) (* (pow (sqrt -1) 2) (sqrt 2))))
(*.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 im)) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(*.f64 (neg.f64 im) (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal -2 binary64)))
(* -1 (* im (- (* -1 (/ (+ (* 2 re) (/ (pow re 2) im)) im)) 2)))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) im) #s(literal -1 binary64) #s(literal -2 binary64)))
(* -1 (* (sqrt im) (sqrt -1)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1)))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (neg.f64 im) (fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (sqrt -1)))) (* 1/4 (* (sqrt im) (* (pow re 2) (sqrt -1))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt -1)))) (* (sqrt (/ 1 im)) (sqrt -1))))))
(*.f64 (neg.f64 im) (-.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) (/.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im)) (*.f64 re re)) #s(literal 3/8 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re im) re) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) im)) (neg.f64 im))
(* -1 (* (sqrt im) (pow (sqrt -1) 2)))
(*.f64 #s(literal 1 binary64) (sqrt.f64 im))

rewrite166.0ms (2.7%)

Memory
-16.6MiB live, 261.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036258
059207
1191207
21024207
08709207
Stop Event
iter limit
node limit
iter limit
Counts
21 → 420
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(sqrt.f64 #s(literal 2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(sqrt.f64 im)
Outputs
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.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 2 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) #s(literal 1 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 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/8 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.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/8 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/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 (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 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #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)))
(*.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)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))))
(pow.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) #s(literal 4 binary64))
(pow.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(exp.f64 (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 (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))))
(*.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/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.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/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (*.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 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (*.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 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 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 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #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)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #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 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 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 (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/8 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 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 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 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.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 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.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 #s(literal 4 binary64) #s(literal 1/8 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 (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 #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 (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 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (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/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (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)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(pow.f64 (exp.f64 #s(literal 1/4 binary64)) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) #s(literal 2 binary64))
(pow.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 1 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) #s(literal 1/8 binary64)))
(exp.f64 (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))))
(*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 im re) re))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(*.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) (exp.f64 (log.f64 (+.f64 (hypot.f64 im re) re))))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (*.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 (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)))) (-.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re))) (-.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re)))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 re #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))) (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 re #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) re) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(literal 2 binary64) re) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (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 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 im re) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(fma.f64 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 re #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(+.f64 (*.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re #s(literal 2 binary64)))
(+.f64 (*.f64 re #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(*.f64 (*.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 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im))))
#s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (sqrt.f64 (*.f64 #s(literal 2 binary64) im)))
(*.f64 (*.f64 (sqrt.f64 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 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 im #s(literal 1/4 binary64))) (pow.f64 im #s(literal 1/4 binary64)))
(*.f64 (*.f64 (pow.f64 im #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (*.f64 (pow.f64 im #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 im #s(literal 1/4 binary64))) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 im #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 im #s(literal 1/4 binary64)) (*.f64 (pow.f64 im #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 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 im)))
(*.f64 (sqrt.f64 im) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(literal 2 binary64) im))
(exp.f64 (fma.f64 (log.f64 im) #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 im) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 2 binary64) #s(literal 1/2 binary64))
(sqrt.f64 #s(literal 2 binary64))
(exp.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #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) (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 (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #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) (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 (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #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) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(*.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (pow.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))
(*.f64 (fma.f64 (*.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 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)) (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 (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 (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)) (pow.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) #s(literal -1 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))) (*.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))) (+.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (fma.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (*.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))))) (neg.f64 (neg.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (*.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (*.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (neg.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.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 #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 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.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 #s(literal 1 binary64) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))))
(/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (fma.f64 (*.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))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im)))) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 im im))) (neg.f64 (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 3 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re)) (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64))))))
(fma.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) re) (pow.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (*.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) re) (pow.f64 (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (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 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64)))) (pow.f64 (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 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 (-.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (pow.f64 (-.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal -1 binary64)) re) (*.f64 #s(literal 2 binary64) im))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 re re) (fma.f64 #s(literal 2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 re re) (fma.f64 re #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) im)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) re) (fma.f64 #s(literal 2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 re im) re) (fma.f64 re #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (+.f64 #s(literal 8 binary64) (pow.f64 (/.f64 re im) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 #s(literal 4 binary64) (fma.f64 #s(literal -2 binary64) (/.f64 re im) (pow.f64 (/.f64 re im) #s(literal 2 binary64)))) #s(literal -1 binary64)) re) (*.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 (neg.f64 re) (/.f64 (neg.f64 re) im) (fma.f64 #s(literal 2 binary64) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 (neg.f64 re) (/.f64 (neg.f64 re) im) (fma.f64 re #s(literal 2 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 #s(literal 2 binary64) re (fma.f64 (/.f64 re im) re (*.f64 #s(literal 2 binary64) im)))
(fma.f64 im #s(literal 2 binary64) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(fma.f64 re (+.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 #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 re #s(literal 2 binary64) (fma.f64 (/.f64 re im) re (*.f64 #s(literal 2 binary64) im)))
(-.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 re #s(literal 2 binary64)))
(+.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 re #s(literal 2 binary64))) (*.f64 (/.f64 re im) re))
(+.f64 (fma.f64 #s(literal 2 binary64) im (*.f64 #s(literal 2 binary64) re)) (*.f64 (/.f64 re im) re))
(+.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 re #s(literal 2 binary64)) (fma.f64 (/.f64 re im) re (*.f64 #s(literal 2 binary64) im)))
(+.f64 (*.f64 #s(literal 2 binary64) re) (fma.f64 (/.f64 re im) re (*.f64 #s(literal 2 binary64) im)))
(+.f64 (/.f64 (pow.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) #s(literal 2 binary64)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im))) (neg.f64 (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 im im)) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal -2 binary64) im)))))
(+.f64 (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re) (*.f64 #s(literal 2 binary64) im))
(+.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 (hypot.f64 im re) 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) (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/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (*.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 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))
(*.f64 (*.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 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 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 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #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)))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #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 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 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 (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/8 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 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 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 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.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 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.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 #s(literal 4 binary64) #s(literal 1/8 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 (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 #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 (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 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.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 2 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) #s(literal 1 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 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/8 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/16 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 2 binary64) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64))))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.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/8 binary64)) (pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/8 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 3/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 (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 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (+.f64 (hypot.f64 im re) re) #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)))
(*.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)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64))))
(pow.f64 (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) #s(literal 1/8 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/8 binary64)) #s(literal 4 binary64))
(pow.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(exp.f64 (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 (log.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))))
(*.f64 (*.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/8 binary64))) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (sqrt.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (sqrt.f64 (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64))) (pow.f64 (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (*.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/8 binary64)) (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)) (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (sqrt.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 re (hypot.f64 im re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (fma.f64 #s(literal -1 binary64) (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 re (-.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 2 binary64)) (*.f64 re re))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (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 re (-.f64 re (hypot.f64 im 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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) (pow.f64 re #s(literal 3/2 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(sqrt.f64 (+.f64 (hypot.f64 im re) re))
(hypot.f64 (pow.f64 re #s(literal 1/2 binary64)) (sqrt.f64 (hypot.f64 im re)))
(hypot.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)))
(hypot.f64 (sqrt.f64 (hypot.f64 im re)) (pow.f64 re #s(literal 1/2 binary64)))
(hypot.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)))
(exp.f64 (fma.f64 (log.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64) (log.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64)))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (+.f64 (hypot.f64 im re) re) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 im re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 im re) re) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (hypot.f64 im re) re) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (*.f64 (-.f64 (hypot.f64 im re) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 im re) re) (-.f64 (hypot.f64 im re) re)))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (-.f64 re (hypot.f64 im re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 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 (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 im re) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 (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 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (hypot.f64 im re) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) 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)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 re im) (-.f64 re im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 re) re (*.f64 im im))) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.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))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (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))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (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)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 im re))
(fma.f64 #s(literal 1 binary64) re (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(fma.f64 re #s(literal 1 binary64) (hypot.f64 im re))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 re (hypot.f64 im re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(+.f64 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))
(*.f64 (pow.f64 im #s(literal 1/4 binary64)) (pow.f64 im #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 im #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1/4 binary64))
(pow.f64 im #s(literal 1/2 binary64))
(sqrt.f64 im)
(exp.f64 (*.f64 (log.f64 im) #s(literal 1/2 binary64)))

eval78.0ms (1.3%)

Memory
39.3MiB live, 153.4MiB allocated
Compiler

Compiled 19 419 to 2 965 computations (84.7% saved)

prune92.0ms (1.5%)

Memory
-21.3MiB live, 59.3MiB allocated
Pruning

25 alts after pruning (15 fresh and 10 done)

PrunedKeptTotal
New58811599
Fresh044
Picked055
Done055
Total58825613
Accuracy
93.9%
Counts
613 → 25
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.0%
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
53.4%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
50.0%
(*.f64 (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)) #s(literal 1/2 binary64))
12.8%
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
16.3%
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
17.2%
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
76.9%
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
13.8%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
54.9%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
77.5%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
55.3%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
13.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
20.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
50.0%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
53.3%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (pow.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
53.3%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
49.9%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (exp.f64 (*.f64 (log.f64 im) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))
49.8%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp.f64 (fma.f64 (log.f64 im) #s(literal 1/2 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))
40.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
16.9%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))))
54.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
24.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 1 082 to 762 computations (29.6% saved)

simplify121.0ms (2%)

Memory
24.1MiB live, 61.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
042483
069469
1103469
2144469
3183469
4252469
5408469
6725469
71494469
82543469
93012469
103189469
113269469
123293469
133334469
143364469
153368469
163376469
03376369
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
(+.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(neg.f64 im)
im
(/.f64 im re)
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(/.f64 #s(literal -1/4 binary64) re)
#s(literal -1/4 binary64)
re
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(pow.f64 im #s(literal 4 binary64))
im
#s(literal 4 binary64)
(*.f64 im im)
(neg.f64 re)
#s(literal 1/2 binary64)
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(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)))
(*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(log.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 (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)) #s(literal 1/2 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))
(exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(log.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)
Outputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))))
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
(+.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re))))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) im)
(neg.f64 im)
im
(/.f64 im re)
re
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(/.f64 (fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im)) (neg.f64 re))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im))
(/.f64 #s(literal -1/4 binary64) re)
#s(literal -1/4 binary64)
re
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(pow.f64 im #s(literal 4 binary64))
im
#s(literal 4 binary64)
(*.f64 im im)
(neg.f64 re)
#s(literal 1/2 binary64)
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(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)))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(log.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 (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)) #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))
(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))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (log.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))
(log.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)

localize167.0ms (2.7%)

Memory
-14.9MiB live, 229.0MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy5.055646090243823
(exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
accuracy5.196690805181685
(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))
accuracy7.0218115837980415
(log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy29.904374589484235
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.0
(*.f64 #s(literal 2 binary64) im)
accuracy4.796943802168773
(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)))
accuracy7.0218115837980415
(log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy29.904374589484235
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy5.3035195645197195
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
accuracy6.090472742611788
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
accuracy19.483783663019565
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
accuracy45.781134925072735
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))
accuracy0.0
(neg.f64 im)
accuracy0.09765625
(*.f64 (neg.f64 im) (/.f64 im re))
accuracy5.196690805181685
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re))))
accuracy45.73539117132223
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))
accuracy0.0
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.00390625
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
accuracy5.196690805181685
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64)))
accuracy28.446406550835952
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
Samples
72.0ms189×0valid
25.0ms47×1valid
14.0ms20×2valid
Compiler

Compiled 845 to 76 computations (91% saved)

Precisions
Click to see histograms. Total time spent on operations: 82.0ms
ival-div: 24.0ms (29.2% of total)
ival-mult: 16.0ms (19.5% of total)
ival-exp: 9.0ms (11% of total)
ival-hypot: 8.0ms (9.7% of total)
ival-log: 7.0ms (8.5% of total)
ival-sqrt: 4.0ms (4.9% of total)
ival-pow: 4.0ms (4.9% of total)
ival-add: 4.0ms (4.9% of total)
adjust: 3.0ms (3.7% of total)
ival-neg: 2.0ms (2.4% of total)
exact: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series51.0ms (0.8%)

Memory
-6.6MiB live, 30.8MiB allocated
Counts
24 → 168
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(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)))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(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))
(*.f64 (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)) #s(literal 1/2 binary64))
(neg.f64 im)
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* -1 (/ (pow im 2) re))
(* 1/4 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(* 1/2 (log (* 2 im)))
(+ (* 1/2 (log (* 2 im))) (* 1/2 (/ re im)))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* -1/12 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* (pow re 2) (- (* 3/80 (/ (pow re 2) (pow im 5))) (* 1/12 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(log (* 2 im))
(+ (log (* 2 im)) (/ re im))
(+ (log (* 2 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log (* 2 im)) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* -1/4 (/ (pow im 4) (pow re 2)))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(/ (pow im 4) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(/ (+ (* -1 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 2)))) re)
(* 2 (sqrt re))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(+ (* 1/1440 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(+ (log 4) (* -1 (log (/ 1 re))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(pow im 2)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/1440 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(+ (log (/ -1 re)) (log (pow im 2)))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (- (* 1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(* 1/2 (log (* 4 re)))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (log (* 4 re))))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* -3/64 (/ (pow im 2) (pow re 4))) (* 1/8 (/ 1 (pow re 2))))))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* (pow im 2) (- (* 5/192 (/ (pow im 2) (pow re 6))) (* 3/64 (/ 1 (pow re 4))))) (* 1/8 (/ 1 (pow re 2))))))
(log (* 4 re))
(+ (log (* 4 re)) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (log (* 4 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (log (* 4 re)) (* (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 im)
(* (pow im 2) (+ 1 (* -1/4 (/ (pow im 2) (pow re 2)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* (pow im 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(* im (+ (* -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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))
(+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))
(+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im))))
(+ (* 1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))))
(+ (log 2) (* -1 (log (/ 1 im))))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (/ re im)))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im))))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))))
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 2)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(* -1 (* im (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))
(+ (* -1/2 (/ re im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (* -1 (/ (+ (* -1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (log 2) (* -1 (log (/ -1 im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ re im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 2)) (pow re 2)))) im))) im))))
Calls

6 calls:

TimeVariablePointExpression
26.0ms
re
@-inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* (neg im) (/ im re)) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/ (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (neg re)) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) 1/2) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) (* (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) 1/2) (neg im) (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (/ (pow im 4) re) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im))
7.0ms
re
@0
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* (neg im) (/ im re)) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/ (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (neg re)) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) 1/2) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) (* (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) 1/2) (neg im) (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (/ (pow im 4) re) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im))
4.0ms
im
@inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* (neg im) (/ im re)) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/ (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (neg re)) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) 1/2) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) (* (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) 1/2) (neg im) (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (/ (pow im 4) re) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im))
4.0ms
im
@0
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* (neg im) (/ im re)) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/ (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (neg re)) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) 1/2) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) (* (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) 1/2) (neg im) (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (/ (pow im 4) re) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im))
4.0ms
re
@inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* (neg im) (/ im re)) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/ (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (neg re)) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) 1/2) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) (* (pow (exp (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) 1/2) 1/2) (neg im) (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (/ (pow im 4) re) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im))

simplify177.0ms (2.9%)

Memory
26.6MiB live, 207.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08284373
125894028
084733819
Stop Event
iter limit
node limit
Counts
168 → 167
Calls
Call 1
Inputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* -1 (/ (pow im 2) re))
(* 1/4 (/ (pow im 4) (pow re 3)))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(* 1/2 (log (* 2 im)))
(+ (* 1/2 (log (* 2 im))) (* 1/2 (/ re im)))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* -1/12 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* (pow re 2) (- (* 3/80 (/ (pow re 2) (pow im 5))) (* 1/12 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(log (* 2 im))
(+ (log (* 2 im)) (/ re im))
(+ (log (* 2 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log (* 2 im)) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* -1/4 (/ (pow im 4) (pow re 2)))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(/ (pow im 4) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(/ (+ (* -1 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 2)))) re)
(* 2 (sqrt re))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(+ (* 1/1440 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(+ (log 4) (* -1 (log (/ 1 re))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(pow im 2)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/1440 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(+ (log (/ -1 re)) (log (pow im 2)))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (- (* 1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(* 1/2 (log (* 4 re)))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (log (* 4 re))))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* -3/64 (/ (pow im 2) (pow re 4))) (* 1/8 (/ 1 (pow re 2))))))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* (pow im 2) (- (* 5/192 (/ (pow im 2) (pow re 6))) (* 3/64 (/ 1 (pow re 4))))) (* 1/8 (/ 1 (pow re 2))))))
(log (* 4 re))
(+ (log (* 4 re)) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (log (* 4 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (log (* 4 re)) (* (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 im)
(* (pow im 2) (+ 1 (* -1/4 (/ (pow im 2) (pow re 2)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* (pow im 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(* im (+ (* -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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))
(+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))
(+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im))))
(+ (* 1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))))
(+ (log 2) (* -1 (log (/ 1 im))))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (/ re im)))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im))))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))))
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 2)))))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(* -1 (* im (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2))))))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))
(+ (* -1/2 (/ re im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (* -1 (/ (+ (* -1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (log 2) (* -1 (log (/ -1 im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ re im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im))))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 2)) (pow re 2)))) im))) im))))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 re #s(literal 1/16 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/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/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (*.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 re im))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
im
(+ im re)
(+.f64 re im)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re im)
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 im im) (neg.f64 re))
(* 1/4 (/ (pow im 4) (pow re 3)))
(/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (pow.f64 re #s(literal 3 binary64)))
(/ (+ (* -1 (* (pow im 2) (pow re 2))) (* 1/4 (pow im 4))) (pow re 3))
(/.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (*.f64 re re) im) im)) (pow.f64 re #s(literal 3 binary64)))
(+ (* (sqrt im) (sqrt 2)) (* (sqrt (/ 1 im)) (/ re (sqrt 2))))
(fma.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/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2))))) (sqrt 2)))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 (*.f64 re (/.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))) #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 (+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (/ (* re (- (/ 1 (* (pow im 2) (pow (sqrt 2) 4))) (/ 1 (* (pow im 2) (pow (sqrt 2) 2))))) (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (/ (- (/ 1 im) (/ 1 (* im (pow (sqrt 2) 2)))) (sqrt 2)))))) (* (sqrt (/ 1 im)) (/ 1 (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (fma.f64 re (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 4 binary64))) (*.f64 im im)) (/.f64 #s(literal 1/2 binary64) (*.f64 im im))) (sqrt.f64 #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))))) (/.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)))
(* 1/2 (log (* 2 im)))
(*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64))
(+ (* 1/2 (log (* 2 im))) (* 1/2 (/ re im)))
(*.f64 #s(literal 1/2 binary64) (+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im)))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* -1/12 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 #s(literal -1/12 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) im)) re (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))
(+ (* 1/2 (log (* 2 im))) (* re (+ (* (pow re 2) (- (* 3/80 (/ (pow re 2) (pow im 5))) (* 1/12 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 3/80 binary64) (/.f64 #s(literal -1/12 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 1/2 binary64) (+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im))))
(log (* 2 im))
(log.f64 (*.f64 #s(literal 2 binary64) im))
(+ (log (* 2 im)) (/ re im))
(+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im))
(+ (log (* 2 im)) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im)) re (log.f64 (*.f64 #s(literal 2 binary64) im)))
(+ (log (* 2 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 #s(literal 3/40 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 re #s(literal 3 binary64)) (+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im)))
(* -1/4 (/ (pow im 4) (pow re 2)))
(*.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))
(/ (+ (* -1/4 (pow im 4)) (* (pow im 2) (pow re 2))) (pow re 2))
(/.f64 (fma.f64 (*.f64 (*.f64 re re) im) im (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64))) (*.f64 re re))
(/ (pow im 4) re)
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)))) re)
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/64 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 1 binary64)))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/32 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 4 re)
(*.f64 #s(literal 4 binary64) re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re)
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) re)
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/8 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(* 2 re)
(*.f64 #s(literal 2 binary64) re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64)) re)
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) re)
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (+.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 6 binary64)))) re)
(/ (+ (* -1 (pow im 2)) (* 1/4 (/ (pow im 4) (pow re 2)))) re)
(/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) re)
(* 2 (sqrt re))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 2 (sqrt (/ 1 re)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (pow.f64 im #s(literal 4 binary64))) #s(literal -5/64 binary64) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))
(*.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 binary64))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(fma.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/8 binary64)))
(+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64) (fma.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/8 binary64))))
(+ (* 1/1440 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1440 binary64) (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64) (fma.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/8 binary64)))))
(+ (log 4) (* -1 (log (/ 1 re))))
(+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+.f64 (fma.f64 #s(literal 1/24 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/4 binary64) (log.f64 re))) (log.f64 #s(literal 4 binary64)))
(+ (log 4) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(+.f64 (fma.f64 #s(literal 1/720 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal 1/24 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/4 binary64) (log.f64 re)))) (log.f64 #s(literal 4 binary64)))
(pow im 2)
(*.f64 im im)
(+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/1024 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (neg.f64 re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(/.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(* (* im (sqrt -1)) (sqrt (/ 1 re)))
(*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) im) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/8 (* (* (pow im 3) (sqrt -1)) (sqrt (/ 1 (pow re 5))))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (*.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 3 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))))))
(+ (* -1 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (/.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) (*.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 5 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 (/ (+ (* -1/8 (* (* (pow im 3) (sqrt -1)) (sqrt re))) (+ (* 1/128 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* 1/16 (* (* (pow im 5) (sqrt -1)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (sqrt -1)) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (sqrt.f64 #s(literal -1 binary64))) im (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 5 binary64))) #s(literal 9/128 binary64) (*.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 re)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))
(*.f64 (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(fma.f64 (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/8 binary64)))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(fma.f64 (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64) (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/8 binary64))))
(+ (* -1/8 (/ (pow im 2) (pow re 2))) (+ (* 1/1440 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/48 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))) (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal -720 binary64) im) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) im) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/4 binary64))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/1440 binary64) (fma.f64 (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64) (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/48 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/8 binary64)))))
(+ (log (/ -1 re)) (log (pow im 2)))
(+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im))) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -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 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/24 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im)))) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (log (/ -1 re)) (+ (log (pow im 2)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+.f64 (+.f64 (fma.f64 (/.f64 (fma.f64 (/.f64 #s(literal -720 binary64) im) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) im) (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/4 binary64))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (*.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))))) (log.f64 (*.f64 im im))) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re))))) #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 1 binary64)))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 5 binary64))) (*.f64 #s(literal -1/8 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re))))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1/32 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 4 re) (/ (pow im 2) re))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 5 binary64))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 5 binary64))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(* (pow im 2) (- (* 1/4 (/ (pow im 2) (pow re 3))) (/ 1 re)))
(*.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal 1/4 binary64) (/.f64 #s(literal -1 binary64) re)) (*.f64 im im))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 2 (sqrt re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* -5/64 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -5/64 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 2 (sqrt re)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/64 (sqrt (/ 1 (pow re 7)))) (* 21/512 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 21/512 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) #s(literal -5/64 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(* 1/2 (log (* 4 re)))
(*.f64 (log.f64 (*.f64 #s(literal 4 binary64) re)) #s(literal 1/2 binary64))
(+ (* 1/8 (/ (pow im 2) (pow re 2))) (* 1/2 (log (* 4 re))))
(fma.f64 (log.f64 (*.f64 #s(literal 4 binary64) re)) #s(literal 1/2 binary64) (*.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/8 binary64)))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* -3/64 (/ (pow im 2) (pow re 4))) (* 1/8 (/ 1 (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -3/64 binary64) (/.f64 #s(literal 1/8 binary64) (*.f64 re re))) (*.f64 im im) (*.f64 (log.f64 (*.f64 #s(literal 4 binary64) re)) #s(literal 1/2 binary64)))
(+ (* 1/2 (log (* 4 re))) (* (pow im 2) (+ (* (pow im 2) (- (* 5/192 (/ (pow im 2) (pow re 6))) (* 3/64 (/ 1 (pow re 4))))) (* 1/8 (/ 1 (pow re 2))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 6 binary64))) #s(literal 5/192 binary64) (/.f64 #s(literal -3/64 binary64) (pow.f64 re #s(literal 4 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/8 binary64) (*.f64 re re))) (*.f64 im im) (*.f64 (log.f64 (*.f64 #s(literal 4 binary64) re)) #s(literal 1/2 binary64)))
(log (* 4 re))
(log.f64 (*.f64 #s(literal 4 binary64) re))
(+ (log (* 4 re)) (* 1/4 (/ (pow im 2) (pow re 2))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (log.f64 (*.f64 #s(literal 4 binary64) re)))
(+ (log (* 4 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(fma.f64 (fma.f64 #s(literal -3/32 binary64) (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (log.f64 (*.f64 #s(literal 4 binary64) re)))
(+ (log (* 4 re)) (* (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 (*.f64 im 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) (log.f64 (*.f64 #s(literal 4 binary64) re)))
(* -1 im)
(neg.f64 im)
(* (pow im 2) (+ 1 (* -1/4 (/ (pow im 2) (pow re 2)))))
(*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #s(literal 1 binary64)) im) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))) im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (*.f64 (/.f64 re im) re) (/.f64 #s(literal 1/2 binary64) im) (/.f64 re im)) im im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (/.f64 re im) re) (/.f64 #s(literal 1/2 binary64) im) (/.f64 re im))) im im)
(* (pow im 4) (- (* 1/4 (/ 1 (pow re 3))) (/ 1 (* (pow im 2) re))))
(*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 im im) re))) (pow.f64 im #s(literal 4 binary64)))
(* im (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))
(*.f64 (fma.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/2 (* (sqrt (/ 1 (pow im 5))) (/ (pow re 2) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (sqrt 2)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (/.f64 (*.f64 re 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) (fma.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/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)) (* (sqrt (/ 1 (pow im 3))) (/ re (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 re #s(literal 2 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 re 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) (fma.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)
(* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))
(*.f64 (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))
(*.f64 #s(literal 1/2 binary64) (+.f64 (+.f64 (log.f64 im) (/.f64 re im)) (log.f64 #s(literal 2 binary64))))
(+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im))))
(fma.f64 #s(literal 1/2 binary64) (+.f64 (+.f64 (log.f64 im) (/.f64 re im)) (log.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (*.f64 im im)))
(+ (* 1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (+ (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))) (* 1/2 (/ re im)))))
(fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/12 binary64) (fma.f64 #s(literal 1/2 binary64) (+.f64 (+.f64 (log.f64 im) (/.f64 re im)) (log.f64 #s(literal 2 binary64))) (/.f64 #s(literal 0 binary64) (*.f64 im im))))
(+ (log 2) (* -1 (log (/ 1 im))))
(+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (/ re im)))
(+.f64 (+.f64 (log.f64 im) (/.f64 re im)) (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im))))
(+.f64 (+.f64 (+.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im)) (log.f64 im)) (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* -1 (log (/ 1 im))) (+ (* 1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) (pow im 3))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))))
(+.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1/6 binary64) (+.f64 (+.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im)) (log.f64 im))) (log.f64 #s(literal 2 binary64)))
(* (pow im 4) (- (/ 1 (pow im 2)) (* 1/4 (/ 1 (pow re 2)))))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) im) im) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (pow.f64 im #s(literal 4 binary64)))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (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 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.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 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (-.f64 (fma.f64 (*.f64 (sqrt.f64 (/.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 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/16 binary64))) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 (neg.f64 (sqrt.f64 im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (neg.f64 im))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64))) #s(literal -1/4 binary64) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (-.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ re im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 re im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1/2 (/ (pow re 2) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (/.f64 re im) re) #s(literal -1/2 binary64) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) im)) (neg.f64 im))
(* -1 (* im (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2))))))
(*.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 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) (neg.f64 im))
(* -1 (* im (+ (* -1/2 (* (sqrt (/ 1 (pow im 5))) (/ (* (pow re 2) (sqrt -1)) (sqrt 2)))) (+ (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) re) re) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 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 (sqrt.f64 #s(literal -1 binary64)) re) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) (neg.f64 im))
(* -1 (* im (+ (* -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))) (* (sqrt (/ 1 (pow im 3))) (/ (* re (sqrt -1)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 im) (fma.f64 (*.f64 re re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (/.f64 (*.f64 re re) (sqrt.f64 #s(literal 2 binary64))))))) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))
(*.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) #s(literal 1/2 binary64))
(+ (* -1/2 (/ re im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(fma.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 re im)))
(+ (* -1 (/ (+ (* -1/4 (/ (+ (* -1 (pow re 2)) (pow re 2)) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(fma.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) #s(literal 1/2 binary64) (/.f64 (fma.f64 #s(literal 1/2 binary64) re (/.f64 #s(literal 0 binary64) im)) (neg.f64 im)))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/12 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))) im)) (* 1/2 re)) im)) (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(fma.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) #s(literal 1/2 binary64) (/.f64 (fma.f64 #s(literal 1/2 binary64) re (/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1 binary64)) im) #s(literal -1/12 binary64) #s(literal 0 binary64)) (neg.f64 im))) (neg.f64 im)))
(+ (log 2) (* -1 (log (/ -1 im))))
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ re im))))
(-.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) (/.f64 re im))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im))))
(-.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) (/.f64 (+.f64 (/.f64 #s(literal 0 binary64) im) re) im))
(+ (log 2) (+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (pow re 3)) (* 2 (pow re 3))) im)) (* 1/2 (+ (* -1 (pow re 2)) (pow re 2)))) im))) im))))
(-.f64 (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1 binary64)) im) #s(literal -1/6 binary64) #s(literal 0 binary64)) im)) im))

rewrite237.0ms (3.9%)

Memory
-24.1MiB live, 265.3MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042412
069398
1194398
21062398
08803308
Stop Event
iter limit
node limit
iter limit
Counts
24 → 417
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(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)))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
(exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(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))
(*.f64 (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)) #s(literal 1/2 binary64))
(neg.f64 im)
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) (*.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 (+ (* im im) (* re re))) re) (+.f64 re im)))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)))
(*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))
#s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 im) #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im)))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 (neg.f64 im) (*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 im)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 (*.f64 (/.f64 im re) (*.f64 (neg.f64 im) im)) im)
(/.f64 (*.f64 (/.f64 im re) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im im #s(literal 0 binary64)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) re)
(/.f64 (-.f64 #s(literal 0 binary64) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re)) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -2 binary64)) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 #s(literal -1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re im) (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 im im) (neg.f64 re))
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 im (/.f64 (neg.f64 re) im))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im)))
(neg.f64 (*.f64 (/.f64 im re) im))
(fma.f64 #s(literal 0 binary64) (/.f64 im re) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (/.f64 im re) #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 re im)) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(+.f64 (*.f64 #s(literal 0 binary64) (/.f64 im re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 (*.f64 (/.f64 im re) #s(literal 0 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))))
(exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) #s(literal -1 binary64)))
(*.f64 (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) re) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) re))
(*.f64 (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) #s(literal -1 binary64)) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) re))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 re)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) #s(literal -1 binary64))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 #s(literal -1 binary64) re)))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re))))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))
(*.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re)))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re))))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (/.f64 #s(literal -1 binary64) re))
(pow.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))) #s(literal -1 binary64))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))) (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re)))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))) re)
(/.f64 (*.f64 #s(literal 1 binary64) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 #s(literal 1 binary64) (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 re))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (*.f64 (neg.f64 re) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)))
(/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) #s(literal -1 binary64)) (neg.f64 re))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)) (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im))) re)
(/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) #s(literal 1 binary64)) re)
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))) (+.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re) (*.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re)))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))
(/.f64 (neg.f64 (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 re))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) re)
(/.f64 (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 re)) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re))))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 re (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(/.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re))))
(/.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (*.f64 re (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)))
(/.f64 #s(literal -1 binary64) (/.f64 re (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 re))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re)) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 re) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (*.f64 (neg.f64 re) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 re)))
(/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)) re)
(/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re))
(neg.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))))
(neg.f64 (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(fma.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (neg.f64 im) #s(literal 1 binary64)) (/.f64 im re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 (neg.f64 im) re) im (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1 binary64) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(fma.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (neg.f64 im) re) im))
(fma.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 im re) (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal -1 binary64))) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (/.f64 im re) (neg.f64 im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (neg.f64 im) (*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 im)) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 (neg.f64 im) (/.f64 im re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(fma.f64 im (/.f64 (neg.f64 im) re) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(-.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 re (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(-.f64 (/.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (neg.f64 re)) (/.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (neg.f64 re)))
(-.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (neg.f64 re) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(+.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)))
(+.f64 (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im)) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64))))
(+.f64 #s(literal 0 binary64) (/.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (neg.f64 re)))
(+.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (/.f64 #s(literal -1 binary64) re)))
(*.f64 (*.f64 (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/8 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 1 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 1 binary64)))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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)) (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 #s(literal 1/2 binary64)) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)) #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 (fma.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.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)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 1/2 binary64))) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.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)))
(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)))
(*.f64 (*.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/8 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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/8 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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 (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 (log.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) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(log.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))
(exp.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (*.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/8 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 1 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 1 binary64)))
(*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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)) (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 #s(literal 1/2 binary64)) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))))
(pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64)) #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 (fma.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.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)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 1/2 binary64))) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.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)))
(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)))
(*.f64 (*.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/8 binary64))) (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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/8 binary64)) (*.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/8 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 (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 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 im im #s(literal 0 binary64))))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 (neg.f64 im) #s(literal 1 binary64))
(*.f64 im #s(literal -1 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im im #s(literal 0 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) im)
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im im #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im #s(literal 0 binary64)))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 #s(literal 1 binary64) (/.f64 im (*.f64 (neg.f64 im) im)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (*.f64 im im) (neg.f64 im))
(neg.f64 im)
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 im im #s(literal 0 binary64))) (/.f64 (pow.f64 im #s(literal 3 binary64)) (fma.f64 im im #s(literal 0 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re))))
(*.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) #s(literal 1 binary64)))
(*.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(*.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)))
(*.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64))))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (*.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64))))))
(*.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))) (*.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) #s(literal 3 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (*.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))))) (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))))
(/.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re)))
(/.f64 (neg.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))
(/.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64))))))
(/.f64 (neg.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (neg.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(/.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (neg.f64 (neg.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))))
(/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))))
(/.f64 (+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 im #s(literal 12 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -2 binary64)))) (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(neg.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(fma.f64 (*.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1/4 binary64)) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im re) im)) #s(literal -1 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im re) im)) #s(literal 1 binary64)) (*.f64 (/.f64 im re) im) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) (neg.f64 re)) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1 binary64)) (/.f64 #s(literal 1/4 binary64) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal 1 binary64)) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal -1 binary64)) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal 1 binary64)) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(fma.f64 (/.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) re) (*.f64 (/.f64 im re) im) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (/.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 re #s(literal -1 binary64)) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) (neg.f64 re)) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (pow.f64 im #s(literal 4 binary64)) (*.f64 im im))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 (/.f64 im re) im)) (*.f64 (/.f64 im re) im) (*.f64 im im))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) (pow.f64 re #s(literal -2 binary64))) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1/4 binary64) re) #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) (/.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 re) re)) (*.f64 im im))
(fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(fma.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (*.f64 (/.f64 im re) im) (/.f64 (*.f64 (/.f64 im re) im) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 #s(literal -1 binary64) (*.f64 (neg.f64 im) im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal -1/4 binary64)) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(fma.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im (/.f64 (/.f64 #s(literal -1/4 binary64) re) re)) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 re) re) (pow.f64 im #s(literal -4 binary64)))) (*.f64 im im))
(fma.f64 #s(literal 1/4 binary64) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (neg.f64 re)) (*.f64 im im))
(fma.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 #s(literal -1/4 binary64) re)) (*.f64 im im))
(fma.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re re) #s(literal 1/4 binary64))) (*.f64 im im))
(fma.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re #s(literal -4 binary64)) (neg.f64 re))) (*.f64 im im))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) (*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64))) (*.f64 im im))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/4 binary64)) (pow.f64 re #s(literal -2 binary64)) (*.f64 im im))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 (/.f64 im re) im) (/.f64 #s(literal -1/4 binary64) re)) (*.f64 im im))
(fma.f64 (*.f64 im im) (*.f64 (*.f64 im im) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re)) (*.f64 im im))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal -4 binary64)) (*.f64 im im))
(fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal -2 binary64))) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re re) #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 re #s(literal -4 binary64)) re)) (*.f64 im im))
(fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re) (*.f64 im im))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -4 binary64))) (*.f64 im im))
(fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) re)) (*.f64 im im))
(fma.f64 #s(literal -1/4 binary64) (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) (*.f64 im im))
(fma.f64 (neg.f64 im) (neg.f64 im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(fma.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 (/.f64 #s(literal -1/4 binary64) re) re)) (*.f64 im im))
(fma.f64 im im (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re))) (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 im im (/.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re)) re))))
(-.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im))))
(-.f64 #s(literal 0 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 (neg.f64 im) im)))
(+.f64 (/.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 8 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64) (*.f64 (neg.f64 im) im))) (neg.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)))))
(+.f64 (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)) (*.f64 im im))
(+.f64 (*.f64 im im) (*.f64 (/.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) re) #s(literal -1/4 binary64)))
(*.f64 (*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal 3 binary64))) im)
(*.f64 (*.f64 (*.f64 im im) (/.f64 im re)) im)
(*.f64 (pow.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (*.f64 im im) #s(literal 1 binary64)) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re)))
(*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (*.f64 (/.f64 im re) im) (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) (*.f64 im im))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal 4 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))
(*.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 im re))
(*.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) re) #s(literal 1 binary64)))
(*.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 im im) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64)))
(*.f64 (*.f64 im im) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) #s(literal 1 binary64))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (neg.f64 im) re) im) (/.f64 (*.f64 im im) #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (pow.f64 im #s(literal 3 binary64)))
(*.f64 im (*.f64 im (*.f64 (/.f64 im re) im)))
(*.f64 im (*.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal -1 binary64))))
(*.f64 im (/.f64 (pow.f64 im #s(literal 3 binary64)) re))
(pow.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64)))) re)
(/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1 binary64)) (neg.f64 re))
(/.f64 (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64)))) (neg.f64 re))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) re)
(/.f64 #s(literal -1 binary64) (*.f64 (neg.f64 re) (pow.f64 im #s(literal -4 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 re (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 re (pow.f64 im #s(literal 4 binary64))))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 re im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (neg.f64 re))
(/.f64 (pow.f64 im #s(literal 4 binary64)) re)
(neg.f64 (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -4 binary64))) (neg.f64 re)))
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 re (pow.f64 im #s(literal 4 binary64)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re) #s(literal 1 binary64)))
(neg.f64 (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 binary64)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(exp.f64 (log.f64 #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))

eval75.0ms (1.2%)

Memory
3.1MiB live, 156.6MiB allocated
Compiler

Compiled 22 487 to 3 132 computations (86.1% saved)

prune33.0ms (0.5%)

Memory
4.7MiB live, 80.0MiB allocated
Pruning

28 alts after pruning (16 fresh and 12 done)

PrunedKeptTotal
New57510585
Fresh4610
Picked235
Done1910
Total58228610
Accuracy
94.0%
Counts
610 → 28
Alt Table
Click to see full alt table
StatusAccuracyProgram
77.0%
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
53.4%
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
49.6%
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
17.2%
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
49.6%
(*.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
13.8%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
54.9%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
77.5%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
55.3%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
16.9%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
20.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (neg.f64 im) (/.f64 re im)))) #s(literal 1/2 binary64))
16.9%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 #s(approx (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #s(literal 1 binary64)) im) im)) (neg.f64 re)))) #s(literal 1/2 binary64))
16.9%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (*.f64 im im) (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))
20.0%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
50.0%
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
13.2%
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/24 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im)))) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
16.6%
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im))) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
17.5%
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
49.8%
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
53.3%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (pow.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
53.3%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
49.9%
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (exp.f64 (*.f64 (log.f64 im) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))
40.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
5.8%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
54.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
24.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 1 826 to 774 computations (57.6% saved)

regimes123.0ms (2%)

Memory
13.2MiB live, 168.5MiB allocated
Counts
44 → 2
Calls
Call 1
Inputs
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) #s(approx (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))))
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (*.f64 im im) (/.f64 #s(literal -1 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 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (neg.f64 im) (/.f64 re 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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 #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 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 #s(approx (+ (* (/ -1/4 re) (/ (pow im 4) re)) (* im im)) (*.f64 (*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/4 binary64) #s(literal 1 binary64)) im) im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #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 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/4 binary64) re) (*.f64 im im)) (neg.f64 re)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re)))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 #s(approx (* (+ (sqrt (+ (* re re) (* im im))) re) 2) (*.f64 #s(literal 2 binary64) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (pow.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) #s(literal 2 binary64)) (sqrt.f64 im))) #s(literal 1/2 binary64))
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (exp.f64 (*.f64 (log.f64 im) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(*.f64 (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)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 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)))
(*.f64 #s(approx (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (exp.f64 (fma.f64 (log.f64 im) #s(literal 1/2 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im))) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/24 binary64) (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (*.f64 im im)))) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 #s(approx (pow (* (+ (sqrt (+ (* re re) (* im im))) re) 2) 1/4) (fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64)) #s(literal 1/96 binary64) (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/4 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Calls

7 calls:

44.0ms
re
19.0ms
im
15.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
12.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
10.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
84.0%2re
77.5%1im
83.1%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))))
83.1%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
83.9%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
83.9%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
77.5%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes45.0ms (0.7%)

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

7 calls:

8.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
8.0ms
(*.f64 im im)
6.0ms
im
6.0ms
re
5.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
66.9%4im
66.9%4(*.f64 im im)
69.5%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))))
69.5%3(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
70.3%3(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
70.3%3(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
76.9%3re
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes9.0ms (0.1%)

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

3 calls:

3.0ms
re
3.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
3.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
55.3%1(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
55.3%1(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
68.0%2re
Compiler

Compiled 23 to 18 computations (21.7% saved)

regimes10.0ms (0.2%)

Memory
-15.0MiB live, 21.9MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

7 calls:

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

Compiled 55 to 45 computations (18.2% saved)

bsearch44.0ms (0.7%)

Memory
-14.7MiB live, 71.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
40.0ms
-1.3820524136409125e+143
-4.787131135226305e+127
Samples
19.0ms51×2valid
5.0ms40×1valid
4.0ms16×3valid
4.0ms53×0valid
Compiler

Compiled 338 to 284 computations (16% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-hypot: 8.0ms (46.4% of total)
ival-mult: 3.0ms (17.4% of total)
adjust: 2.0ms (11.6% of total)
ival-add: 2.0ms (11.6% of total)
ival-sqrt: 2.0ms (11.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch40.0ms (0.6%)

Memory
29.3MiB live, 67.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
7.0ms
2.3329508320015193e+30
3.4081744305241654e+30
29.0ms
-1.3820524136409125e+143
-4.787131135226305e+127
Samples
8.0ms41×2valid
7.0ms21×3valid
7.0ms105×0valid
5.0ms41×1valid
Compiler

Compiled 576 to 468 computations (18.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-hypot: 10.0ms (48.9% of total)
ival-mult: 4.0ms (19.6% of total)
ival-sqrt: 3.0ms (14.7% of total)
adjust: 2.0ms (9.8% of total)
ival-add: 2.0ms (9.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
0.0ms
2.3329508320015193e+30
3.4081744305241654e+30
Compiler

Compiled 166 to 138 computations (16.9% saved)

simplify28.0ms (0.5%)

Memory
-12.6MiB live, 59.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038162
151162
259162
369162
474162
577162
678162
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 re #s(literal -110000000000000007744171678751595612138042057504376285433883745415219791287921649974876339945995926802667010774495998211096409126159253504 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im 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 -74999999999999996018456099697244745625044655377306151880422462348354253976117320953912415712895668229808849243901331855695151104 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))) (if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Outputs
(if (<=.f64 re #s(literal -110000000000000007744171678751595612138042057504376285433883745415219791287921649974876339945995926802667010774495998211096409126159253504 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im 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 -110000000000000007744171678751595612138042057504376285433883745415219791287921649974876339945995926802667010774495998211096409126159253504 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -74999999999999996018456099697244745625044655377306151880422462348354253976117320953912415712895668229808849243901331855695151104 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))) (if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -74999999999999996018456099697244745625044655377306151880422462348354253976117320953912415712895668229808849243901331855695151104 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64)) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
(if (<=.f64 re #s(literal 2699999999999999856656003366912 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64)) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))

soundness328.0ms (5.4%)

Memory
-3.7MiB live, 310.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05002884
116592707
259102687
080802521
01265
02065
16165
239865
3422565
0834438
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 253 to 100 computations (60.5% saved)

preprocess71.0ms (1.2%)

Memory
13.1MiB live, 92.6MiB allocated
Remove

(abs im)

Compiler

Compiled 504 to 196 computations (61.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...