math.sqrt on complex, real part

Time bar (total: 7.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze115.0ms (1.6%)

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

Compiled 17 to 11 computations (35.3% saved)

sample2.1s (28.8%)

Memory
50.9MiB live, 1 802.9MiB allocated
Samples
549.0ms6 221×0valid
257.0ms773×1valid
249.0ms444×3valid
208.0ms818×2valid
Precisions
Click to see histograms. Total time spent on operations: 776.0ms
ival-hypot: 348.0ms (44.9% of total)
ival-mult: 189.0ms (24.4% of total)
ival-sqrt: 95.0ms (12.2% of total)
ival-add: 87.0ms (11.2% of total)
adjust: 38.0ms (4.9% of total)
exact: 8.0ms (1% of total)
ival-true: 7.0ms (0.9% of total)
ival-assert: 4.0ms (0.5% of total)
Bogosity

explain240.0ms (3.3%)

Memory
6.7MiB live, 250.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1250-4(-8.612377310531162e-161 -2.3711194722931187e-214)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
350-0-(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
200-1(-1.1828474628214542e-229 -2.8333948501351774e-274)(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 im im)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1040
(+.f64 (*.f64 re re) (*.f64 im im))overflow104
(*.f64 re re)overflow61
(*.f64 im im)overflow58
+.f64(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation350
sqrt.f64(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))uflow-rescue190
(+.f64 (*.f64 re re) (*.f64 im im))underflow17
(*.f64 im im)underflow66
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))underflow8
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))underflow27
(*.f64 re re)underflow59
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)underflow27
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue170
(+.f64 (*.f64 re re) (*.f64 im im))underflow17
(*.f64 re re)underflow59
(*.f64 im im)underflow66
Confusion
Predicted +Predicted -
+1541
-0101
Precision
1.0
Recall
0.9935483870967742
Confusion?
Predicted +Predicted MaybePredicted -
+15401
-00101
Precision?
1.0
Recall?
0.9935483870967742
Freqs
test
numberfreq
0102
1133
221
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
41.0ms38×2valid
38.0ms392×0valid
14.0ms38×3valid
8.0ms44×1valid
Compiler

Compiled 244 to 52 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 47.0ms
ival-hypot: 15.0ms (32.1% of total)
ival-mult: 15.0ms (32.1% of total)
ival-add: 6.0ms (12.8% of total)
ival-sqrt: 5.0ms (10.7% of total)
adjust: 4.0ms (8.6% of total)
exact: 1.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess32.0ms (0.4%)

Memory
-12.1MiB live, 31.8MiB 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.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

simplify3.0ms (0%)

Memory
6.1MiB live, 6.1MiB 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

localize69.0ms (0.9%)

Memory
-6.1MiB live, 71.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
accuracy4.011009563934142
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
accuracy7.764457661877266
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
accuracy28.492184993266502
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
28.0ms22×1valid
18.0ms196×0valid
8.0ms19×3valid
5.0ms19×2valid
Compiler

Compiled 152 to 26 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 48.0ms
ival-hypot: 32.0ms (67.1% of total)
ival-mult: 8.0ms (16.8% of total)
ival-add: 3.0ms (6.3% of total)
adjust: 2.0ms (4.2% of total)
ival-sqrt: 2.0ms (4.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series19.0ms (0.3%)

Memory
24.7MiB live, 24.7MiB 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
4.0ms
im
@0
((+ (* re re) (* im im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (sqrt (+ (* re re) (* im im))) (+ (sqrt (+ (* re re) (* im im))) re))
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
re
@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))

simplify236.0ms (3.3%)

Memory
-23.3MiB live, 251.6MiB 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))

rewrite182.0ms (2.5%)

Memory
16.2MiB live, 227.1MiB 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))

eval58.0ms (0.8%)

Memory
-7.8MiB live, 114.5MiB allocated
Compiler

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

prune18.0ms (0.3%)

Memory
-24.8MiB live, 51.3MiB allocated
Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New38016396
Fresh000
Picked101
Done000
Total38116397
Accuracy
93.6%
Counts
397 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
81.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
28.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.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))))
76.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re))))
17.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #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))))))
43.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
7.3%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
53.7%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))))
51.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)))))
27.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))))
52.7%
(*.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))))
28.2%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
51.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
75.9%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
28.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 650 to 458 computations (29.5% saved)

simplify57.0ms (0.8%)

Memory
19.7MiB live, 61.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
037296
059250
195250
2124250
3157250
4183250
5208250
6260250
7293250
8330250
9366250
10404250
11465250
12666250
131450250
141737250
151797250
161815250
171817250
181817250
01817250
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(+.f64 (hypot.f64 im re) re)
(hypot.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(sqrt.f64 re)
re
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(neg.f64 im)
im
(/.f64 im re)
re
(*.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))))))
#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 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))
#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) (/.f64 (*.f64 im im) re))
#s(literal -1/2 binary64)
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
re
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(literal 1/2 binary64)
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(log.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)
Outputs
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 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 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(neg.f64 im)
im
(/.f64 im re)
re
(*.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 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(*.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(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(/.f64 (*.f64 im im) re)
(*.f64 (/.f64 im re) im)
(*.f64 im im)
im
re
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.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 re im) re) #s(literal 2 binary64))))
#s(literal 1/2 binary64)
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(log.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)

localize92.0ms (1.3%)

Memory
5.9MiB live, 163.6MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
accuracy0
(log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
accuracy2.152419383991229
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
accuracy0
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
accuracy0
(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)))))
accuracy4.885647736343796
(/.f64 (*.f64 im im) re)
accuracy30.92586007284461
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
accuracy0
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
accuracy0
(neg.f64 im)
accuracy0.04296875
(*.f64 (neg.f64 im) (/.f64 im re))
accuracy30.926679334735095
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
accuracy0
(sqrt.f64 re)
accuracy13.6063704170825
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
accuracy0
(+.f64 (hypot.f64 im re) re)
accuracy0
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
accuracy0
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
Samples
37.0ms126×0valid
34.0ms130×0invalid
Compiler

Compiled 598 to 67 computations (88.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 44.0ms
ival-mult: 17.0ms (38.8% of total)
ival-hypot: 8.0ms (18.3% of total)
ival-sqrt: 5.0ms (11.4% of total)
ival-div: 3.0ms (6.8% of total)
ival-exp: 3.0ms (6.8% of total)
ival-log: 3.0ms (6.8% of total)
ival-add: 2.0ms (4.6% of total)
ival-neg: 1.0ms (2.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series90.0ms (1.2%)

Memory
-17.3MiB live, 19.0MiB allocated
Counts
21 → 159
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 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.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))))))
(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 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(neg.f64 im)
(/.f64 (*.f64 im im) re)
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
Outputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(sqrt re)
(* -1 (/ (pow im 2) re))
(+ (* (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))))
(/ (pow im 2) re)
(* -1/2 (/ (pow im 2) 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)))))))
(* 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)))))))
(* 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 (/ (+ (* -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)))
(* (* 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)))))
(+ (* 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)
(* 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 (+ (* (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)))))
(* -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
67.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)) (* (neg 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) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (neg im) (/ (* im im) re) (* -1/2 (/ (* im im) re)))
5.0ms
re
@inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* (neg im) (/ im re)) (* 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) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (neg im) (/ (* im im) re) (* -1/2 (/ (* im im) re)))
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) (* 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)) (* (neg 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) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (neg im) (/ (* im im) re) (* -1/2 (/ (* im im) re)))
4.0ms
im
@inf
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* (neg 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) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (neg im) (/ (* im im) re) (* -1/2 (/ (* im im) re)))
3.0ms
re
@0
((* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (sqrt (+ (* im im) (* re re))) re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt re) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* (neg im) (/ im re)) (* 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) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (neg im) (/ (* im im) re) (* -1/2 (/ (* im im) re)))

simplify193.0ms (2.7%)

Memory
8.8MiB live, 240.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08044235
125363887
084053682
Stop Event
iter limit
node limit
Counts
159 → 158
Calls
Call 1
Inputs
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(sqrt re)
(* -1 (/ (pow im 2) re))
(+ (* (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))))
(/ (pow im 2) re)
(* -1/2 (/ (pow im 2) 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)))))))
(* 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)))))))
(* 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 (/ (+ (* -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)))
(* (* 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)))))
(+ (* 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)
(* 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 (+ (* (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)))))
(* -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 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 #s(literal 2 binary64) (+.f64 re im))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
im
(+ im re)
(+.f64 re im)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 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 re (/.f64 re (pow.f64 im #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re im)
(sqrt re)
(sqrt.f64 re)
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(+ (* (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 (-.f64 (/.f64 #s(literal 1 binary64) im) (/.f64 #s(literal 1/2 binary64) im)) (/.f64 re (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 (-.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))) (/.f64 re (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 re (/.f64 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 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 re (/.f64 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)))) (*.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 re (/.f64 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 (pow.f64 re #s(literal 3 binary64)) (fma.f64 #s(literal 3/40 binary64) (*.f64 re (/.f64 re (pow.f64 im #s(literal 5 binary64)))) (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im)))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(* -1/2 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) 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)
(* 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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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)))
(* 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 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re))) (neg.f64 re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(/.f64 (fma.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) (/.f64 #s(literal 5/64 binary64) (pow.f64 re #s(literal 6 binary64)))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(* -1 (* (sqrt re) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 re) #s(literal 1 binary64))
(* (* 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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #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 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal 9/4 binary64) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1/24 binary64) (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 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/4 binary64) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1 binary64) re)) (*.f64 im im) (*.f64 #s(literal 4 binary64) re))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 im (/.f64 im (pow.f64 re #s(literal 5 binary64)))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) (*.f64 #s(literal 2 binary64) re))
(+ (* 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 im (/.f64 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 im (/.f64 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 im (/.f64 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 im (/.f64 im (pow.f64 re #s(literal 6 binary64)))) (/.f64 #s(literal -3/32 binary64) (pow.f64 re #s(literal 4 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (log.f64 (*.f64 #s(literal 4 binary64) re)))
(* -1 im)
(neg.f64 im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) im)
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64))))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) im)
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) im)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))))) im)
(* im (+ 2 (* 2 (/ re im))))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64))) im)
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/4 binary64) (fma.f64 (/.f64 re im) (/.f64 re im) (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)))) im)
(* im (+ 1 (/ re im)))
(fma.f64 (/.f64 re im) im im)
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(fma.f64 (fma.f64 (*.f64 (/.f64 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)
(* 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 #s(literal 1/2 binary64) (*.f64 re (/.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 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 (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 re (/.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 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 (pow.f64 re #s(literal 3 binary64)) (/.f64 #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 (pow.f64 re #s(literal 3 binary64)) (/.f64 #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)))
(* -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 (sqrt.f64 #s(literal -1 binary64)) re) re) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/16 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -1 (* (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 (sqrt.f64 #s(literal -1 binary64)) re) re) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))) (/.f64 #s(literal 3/8 binary64) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal 2 binary64)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (*.f64 (neg.f64 re) re) im)) im)) (neg.f64 im))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(*.f64 (-.f64 #s(literal 2 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) re (/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 re re)) (neg.f64 im))) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ 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 (sqrt.f64 #s(literal -1 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))))) (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 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re (/.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64)) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))))) (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 (sqrt.f64 #s(literal -1 binary64)) (*.f64 re (/.f64 re (sqrt.f64 #s(literal 2 binary64)))) (*.f64 (/.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)) (*.f64 re (/.f64 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))

rewrite153.0ms (2.1%)

Memory
32.7MiB live, 187.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037255
059209
1171209
2773209
37722209
08390209
Stop Event
iter limit
node limit
iter limit
Counts
21 → 448
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 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.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))))))
(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 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(neg.f64 im)
(/.f64 (*.f64 im im) re)
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
Outputs
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #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 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 1/2 binary64))) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (/.f64 #s(literal 2 binary64) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) #s(literal 2 binary64)) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 re (hypot.f64 re im)))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (hypot.f64 re im) #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 re im) #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 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (hypot.f64 re im) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 re im) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(fma.f64 re #s(literal 2 binary64) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))
(+.f64 (*.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64)))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re)))
(*.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(*.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re))
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 re im))))
(*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(*.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (/.f64 (+.f64 (hypot.f64 re im) re) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 (+.f64 (hypot.f64 re im) re) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (+.f64 (hypot.f64 re im) re) (/.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(*.f64 (+.f64 (hypot.f64 re im) re) (*.f64 (-.f64 (hypot.f64 re im) re) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64))) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))))
(/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 1 binary64)) (-.f64 (hypot.f64 re im) re))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) (*.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))))) (+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)) (pow.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (fma.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))) (*.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 re im))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (neg.f64 (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64))) (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 (-.f64 (hypot.f64 re im) re) (*.f64 re re))) (*.f64 (-.f64 (hypot.f64 re im) re) (-.f64 (hypot.f64 re im) re)))
(/.f64 (exp.f64 (log.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (exp.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 re (hypot.f64 re im)))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (-.f64 (hypot.f64 re im) re) (fma.f64 (*.f64 re re) (fma.f64 re re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(/.f64 (+.f64 (pow.f64 re #s(literal 9 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 9 binary64))) (*.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (hypot.f64 re im) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (*.f64 (hypot.f64 re im) re) #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (-.f64 (hypot.f64 re im) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 re im)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 re im) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (-.f64 (hypot.f64 re im) re)))
(neg.f64 (/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (fma.f64 #s(literal -1 binary64) (hypot.f64 re im) re)))
(neg.f64 (/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) (neg.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (+.f64 (hypot.f64 re im) re) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 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 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 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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 (fma.f64 (neg.f64 re) re (*.f64 im im)) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 re im))
(fma.f64 #s(literal 1 binary64) re (hypot.f64 re im))
(fma.f64 (+.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 re im) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 (sqrt.f64 re) (sqrt.f64 re) (hypot.f64 re im))
(fma.f64 (hypot.f64 re im) (/.f64 (hypot.f64 re im) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(fma.f64 re #s(literal 1 binary64) (hypot.f64 re im))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 re im))) (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 re (hypot.f64 re im))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re))))
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re)) (neg.f64 (*.f64 re (/.f64 re (-.f64 (hypot.f64 re im) re)))))
(+.f64 (hypot.f64 re im) re)
(+.f64 re (hypot.f64 re im))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(*.f64 (pow.f64 re #s(literal 1/4 binary64)) (pow.f64 re #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 re #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1/4 binary64))
(pow.f64 re #s(literal 1/2 binary64))
(sqrt.f64 re)
(exp.f64 (*.f64 (log.f64 re) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64))) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (/.f64 (neg.f64 im) #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 im im))
(*.f64 (/.f64 (neg.f64 im) re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (neg.f64 im) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 #s(literal 1 binary64) (*.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 (*.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 im re))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) re)
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (/.f64 im re)) (*.f64 im im))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) (/.f64 im re)) im)
(/.f64 (*.f64 (/.f64 im re) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 im im))
(/.f64 (*.f64 (/.f64 im re) (*.f64 (neg.f64 im) im)) im)
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im))) (+.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (/.f64 im re) im) (*.f64 (/.f64 im re) im) (*.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 (neg.f64 re) im) (*.f64 im im)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (/.f64 re im) (*.f64 im im)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (neg.f64 re) (*.f64 im im)))
(/.f64 (*.f64 (neg.f64 im) (*.f64 (neg.f64 im) im)) (*.f64 (neg.f64 re) im))
(/.f64 (*.f64 im (*.f64 (neg.f64 im) im)) (*.f64 re im))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 im im) (/.f64 (neg.f64 re) im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (*.f64 im im) (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)) (*.f64 (*.f64 im im) (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (*.f64 im (/.f64 re im)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) re)
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) (neg.f64 im)) (*.f64 im (neg.f64 re)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(/.f64 (neg.f64 (pow.f64 im #s(literal 4 binary64))) (*.f64 (*.f64 re im) im))
(/.f64 (/.f64 #s(literal -1 binary64) re) (pow.f64 im #s(literal -2 binary64)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 (/.f64 re im) (*.f64 im im)))
(/.f64 (/.f64 (neg.f64 im) re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 re im) im) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (neg.f64 re) im) im) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (*.f64 im im) (*.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (*.f64 im im) (*.f64 im (/.f64 (neg.f64 re) 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 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 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))))
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))))
#s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64))) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 2 binary64) re) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 (hypot.f64 re im) #s(literal 2 binary64)))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 1/2 binary64))) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (*.f64 (sqrt.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #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 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 (hypot.f64 re im) re)))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (hypot.f64 (pow.f64 re #s(literal 3/2 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3/2 binary64)))) (sqrt.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 (*.f64 (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) #s(literal 1/2 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)))) (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64))) (*.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))) (-.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))))
(fma.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(fma.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (log.f64 #s(literal 2 binary64)) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (log.f64 (+.f64 (hypot.f64 re im) re)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(*.f64 (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64))) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 #s(literal 2 binary64)) (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re))))))
(/.f64 (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64))) (-.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re))) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64))) (+.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 3 binary64)))))
(-.f64 (/.f64 (pow.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) #s(literal 2 binary64)) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (/.f64 (+.f64 (hypot.f64 re im) re) #s(literal 2 binary64)))))
(-.f64 (log.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (log.f64 (-.f64 (hypot.f64 re im) re)))
(-.f64 (log.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))) (log.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(-.f64 (log.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (log.f64 (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(-.f64 (log.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))))) (log.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 (log.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (log.f64 (/.f64 (-.f64 (hypot.f64 re im) re) #s(literal 2 binary64))))
(-.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (log.f64 (/.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))))
(+.f64 (log.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (log.f64 (fma.f64 re (+.f64 (hypot.f64 re im) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))))
(+.f64 (log.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))) (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (log.f64 (/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 2 binary64))))) (log.f64 (-.f64 (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)) (*.f64 (-.f64 re (hypot.f64 re im)) re))))
(+.f64 (log.f64 (/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 6 binary64))))) (log.f64 (fma.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (-.f64 (*.f64 (-.f64 re (hypot.f64 re im)) re) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (pow.f64 (hypot.f64 re im) #s(literal 4 binary64)))))
(+.f64 (log.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64))) (neg.f64 (log.f64 (-.f64 (hypot.f64 re im) re))))
(+.f64 (log.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (log.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(+.f64 (log.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (log.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re)))))
(+.f64 (log.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))))) (log.f64 (/.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 (log.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (log.f64 (/.f64 #s(literal 2 binary64) (-.f64 (hypot.f64 re im) re))))
(+.f64 (log.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64)))) (log.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 re im) re) #s(literal -1 binary64)) #s(literal 2 binary64))))
(+.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (log.f64 (/.f64 #s(literal 2 binary64) (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))))))
(+.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 re im) #s(literal 3 binary64)))) (log.f64 (*.f64 (pow.f64 (fma.f64 (-.f64 re (hypot.f64 re im)) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 2 binary64))))
(+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (log.f64 (+.f64 (hypot.f64 re im) re)) (log.f64 #s(literal 2 binary64)))
(log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 re im) re)))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (pow.f64 im #s(literal -2 binary64)))
(*.f64 #s(literal -1 binary64) im)
(*.f64 #s(literal 1 binary64) (neg.f64 im))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (neg.f64 im) (/.f64 im im))
(*.f64 (neg.f64 im) #s(literal 1 binary64))
(*.f64 im (/.f64 (neg.f64 im) im))
(*.f64 im #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 im) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (neg.f64 im)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 (neg.f64 im) im))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64)))) (*.f64 im im))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) im)
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 im im))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) im)
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 im im))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 im (*.f64 (neg.f64 im) im)))
(/.f64 (*.f64 (neg.f64 im) im) im)
(/.f64 (*.f64 im im) (neg.f64 im))
(neg.f64 im)
(fma.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (pow.f64 im #s(literal -2 binary64)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) im #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (neg.f64 im) #s(literal 0 binary64))
(fma.f64 (*.f64 (neg.f64 im) im) (pow.f64 im #s(literal -1 binary64)) #s(literal 0 binary64))
(fma.f64 (neg.f64 im) (/.f64 im im) #s(literal 0 binary64))
(fma.f64 (neg.f64 im) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 im (/.f64 (neg.f64 im) im) #s(literal 0 binary64))
(fma.f64 im #s(literal -1 binary64) #s(literal 0 binary64))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 im im)))
(-.f64 (/.f64 #s(literal 0 binary64) im) im)
(-.f64 #s(literal 0 binary64) im)
(+.f64 #s(literal 0 binary64) (neg.f64 im))
(+.f64 (neg.f64 im) #s(literal 0 binary64))
(*.f64 (pow.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64)))
(*.f64 (/.f64 im #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (neg.f64 im) #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (neg.f64 im) re) (neg.f64 im))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 im im))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal 1 binary64))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal -1 binary64))))
(*.f64 (/.f64 im re) im)
(*.f64 (neg.f64 im) (/.f64 (neg.f64 im) re))
(*.f64 im (/.f64 im re))
(pow.f64 (/.f64 (/.f64 re im) im) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) re)
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (neg.f64 re))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) #s(literal 1 binary64)) (neg.f64 re))
(/.f64 #s(literal -1 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (*.f64 im im) re)
(/.f64 (/.f64 im re) (pow.f64 im #s(literal -1 binary64)))
(/.f64 (neg.f64 im) (/.f64 (neg.f64 re) im))
(/.f64 im (/.f64 re im))
(neg.f64 (*.f64 (/.f64 (neg.f64 im) re) im))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 re im) im)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1/2 binary64) (neg.f64 re)) (*.f64 (neg.f64 im) im))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) (pow.f64 re #s(literal -1 binary64))) im)
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 1 binary64)) (/.f64 im re))
(*.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) re))
(*.f64 (/.f64 #s(literal -1/2 binary64) re) (*.f64 im im))
(*.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im)
(*.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 im re))
(*.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 im im) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (neg.f64 im) im) (/.f64 #s(literal -1/2 binary64) (neg.f64 re)))
(*.f64 (*.f64 (neg.f64 im) im) (*.f64 (/.f64 #s(literal -1 binary64) re) #s(literal -1/2 binary64)))
(*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))
(*.f64 (*.f64 im im) (/.f64 #s(literal -1/2 binary64) re))
(*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))
(*.f64 (/.f64 im re) (*.f64 #s(literal -1/2 binary64) im))
(*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (neg.f64 im) re) im))
(*.f64 im (*.f64 #s(literal -1/2 binary64) (/.f64 im re)))
(pow.f64 (/.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) #s(literal -1 binary64)) re)
(/.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (neg.f64 re))
(/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal -1 binary64)) (/.f64 (neg.f64 re) im))
(/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) #s(literal 1 binary64)) (/.f64 re im))
(/.f64 (*.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) #s(literal 1 binary64)) re)
(/.f64 (neg.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) re)
(/.f64 (/.f64 #s(literal -1/2 binary64) re) (pow.f64 im #s(literal -2 binary64)))
(/.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 re im))
(/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (neg.f64 re))
(/.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) re)
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 re im) im) #s(literal -1/2 binary64)))
(/.f64 #s(literal -1/2 binary64) (/.f64 (/.f64 re im) im))
(/.f64 #s(literal 1/2 binary64) (/.f64 (/.f64 (neg.f64 re) im) im))
(neg.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) re))
(neg.f64 (/.f64 (*.f64 (*.f64 im im) #s(literal -1/2 binary64)) (neg.f64 re)))
(neg.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) im) (/.f64 (neg.f64 im) re)))
(neg.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 (neg.f64 im) re) im)))
(neg.f64 (*.f64 (*.f64 (/.f64 (neg.f64 im) re) im) #s(literal -1/2 binary64)))

eval113.0ms (1.6%)

Memory
-25.0MiB live, 208.2MiB allocated
Compiler

Compiled 22 563 to 3 680 computations (83.7% saved)

prune31.0ms (0.4%)

Memory
4.9MiB live, 82.4MiB allocated
Pruning

26 alts after pruning (22 fresh and 4 done)

PrunedKeptTotal
New71820738
Fresh9211
Picked145
Done000
Total72826754
Accuracy
95.3%
Counts
754 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
19.5%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
28.3%
(*.f64 (sqrt.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
76.5%
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
81.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
75.7%
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
19.5%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
51.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))
27.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
52.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
28.2%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 (fma.f64 (/.f64 im re) (/.f64 im re) #s(literal 4 binary64)) re))) #s(literal 1/2 binary64))
51.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
19.9%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
43.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
7.3%
(*.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))))
14.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
16.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
71.3%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
75.9%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
18.6%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))))
15.8%
(*.f64 #s(literal 1/2 binary64) (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))))
16.7%
(*.f64 #s(literal 1/2 binary64) (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))))
47.6%
(*.f64 #s(literal 1/2 binary64) (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))))
28.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 1 045 to 762 computations (27.1% saved)

simplify6.0ms (0.1%)

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

Found 20 expressions of interest:

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

Useful iterations: 1 (0.0ms)

IterNodesCost
041350
071280
1100278
2111278
3112278
0112278
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(sqrt.f64 (hypot.f64 re im))
(hypot.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
#s(literal 4 binary64)
re
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im
(*.f64 #s(literal 1/2 binary64) (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)
(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)))
(*.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(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))
(+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))
(log.f64 im)
im
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
(+.f64 (hypot.f64 im re) re)
(sqrt.f64 (hypot.f64 re im))
(sqrt.f64 (hypot.f64 im re))
(hypot.f64 re im)
(hypot.f64 im re)
re
im
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
(fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))
#s(literal 4 binary64)
re
(/.f64 (*.f64 im im) re)
(*.f64 im im)
im
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
(sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
(*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))
#s(literal 2 binary64)
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
(+.f64 (hypot.f64 im re) re)
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(hypot.f64 im re)
(fma.f64 re re (*.f64 im im))
(fma.f64 im im (*.f64 re re))
re
(*.f64 im im)
im
(*.f64 #s(literal 1/2 binary64) (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))))
(*.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(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)))
(sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im)))))
(*.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))
(*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))) #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im)))
(+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))
(+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 im))
(log.f64 im)
im
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize230.0ms (3.2%)

Memory
-0.9MiB live, 287.8MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (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))))
accuracy0.1875
(+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))
accuracy4.581026179403977
(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)))
accuracy28.48734618640322
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))
accuracy0.0078125
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))
accuracy4.011009563934142
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))
accuracy7.764457661877266
(+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)
accuracy28.492184993266502
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0.00390625
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))) #s(literal 1/2 binary64))
accuracy4.011009563934142
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re))))
accuracy8.934883755575811
(/.f64 (*.f64 im im) re)
accuracy45.42546065382651
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 #s(literal 4 binary64) re (/.f64 (*.f64 im im) re)))
accuracy0
(*.f64 #s(literal 2 binary64) im)
accuracy0.00390625
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
accuracy4.011009563934142
(sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im)))
accuracy31.3542188225297
#s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))
accuracy0.00390625
(sqrt.f64 (hypot.f64 re im))
accuracy0.0078125
(*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))
accuracy4.011009563934142
(sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64)))
accuracy15.060138699924964
(fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re)
Samples
146.0ms196×0valid
23.0ms19×3valid
18.0ms22×1valid
15.0ms19×2valid
Compiler

Compiled 740 to 79 computations (89.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 171.0ms
ival-mult: 63.0ms (36.9% of total)
ival-sqrt: 37.0ms (21.7% of total)
ival-log: 35.0ms (20.5% of total)
ival-hypot: 16.0ms (9.4% of total)
ival-add: 8.0ms (4.7% of total)
adjust: 6.0ms (3.5% of total)
ival-exp: 4.0ms (2.3% of total)
ival-div: 2.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)

series143.0ms (2%)

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

6 calls:

TimeVariablePointExpression
69.0ms
im
@0
((+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* 4 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) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (log im) (log 2)) (sqrt (sqrt (+ (* re re) (* im im)))) (/ (* im im) re) (sqrt (+ (* re re) (* im im))) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)))
40.0ms
im
@-inf
((+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* 4 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) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (log im) (log 2)) (sqrt (sqrt (+ (* re re) (* im im)))) (/ (* im im) re) (sqrt (+ (* re re) (* im im))) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)))
21.0ms
im
@inf
((+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* 4 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) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (log im) (log 2)) (sqrt (sqrt (+ (* re re) (* im im)))) (/ (* im im) re) (sqrt (+ (* re re) (* im im))) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)))
4.0ms
re
@inf
((+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* 4 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) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (log im) (log 2)) (sqrt (sqrt (+ (* re re) (* im im)))) (/ (* im im) re) (sqrt (+ (* re re) (* im im))) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)))
3.0ms
re
@-inf
((+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (* 2 im) (* (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (sqrt (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (+ (* 4 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) (* 1/2 (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2))) (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (log im) (log 2)) (sqrt (sqrt (+ (* re re) (* im im)))) (/ (* im im) re) (sqrt (+ (* re re) (* im im))) (exp (* (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) 1/2)))

simplify202.0ms (2.8%)

Memory
19.5MiB live, 268.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09665281
130804924
082704645
Stop Event
iter limit
node limit
Counts
206 → 204
Calls
Call 1
Inputs
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(/ (pow im 2) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) re)
(* 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))))
(* (pow 1 1/4) (sqrt im))
(+ (* 1/4 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 3))) (pow re 2)))) (* (pow 1 1/4) (sqrt im)))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 7))) (pow re 2)))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))))))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow im 7))))) (* 7/128 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 11))) (pow re 2)))))))))
(+ 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)))))
(+ (* (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)))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* 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)))))))
(sqrt re)
(+ (sqrt re) (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))) (* (sqrt (/ 1 (pow re 11))) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6))))))))
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 (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 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (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 (/ (pow im 2) (pow re 2))) 4)))
(* 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)))))))
(* (sqrt re) (sqrt -1))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt -1)))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))))))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (+ (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))) (* (sqrt (/ 1 (pow re 11))) (* (sqrt -1) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6)))))))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* (* im (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 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(* 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))))))
(+ (log 2) (log im))
(* (pow 1 1/4) (sqrt re))
(+ (* 1/4 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 3)))))) (* (pow 1 1/4) (sqrt re)))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 7)))))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))))))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow re 7))))) (* 7/128 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 11)))))))))))
(+ 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/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))))))))))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(* 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)))))
(sqrt im)
(+ (sqrt im) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (+ (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))) (* (sqrt (/ 1 (pow im 11))) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6))))))))
(* 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 (+ (* (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 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/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/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))))
(+ (log -1) (+ (log 2) (* -1 (log (/ -1 im)))))
(* (sqrt im) (sqrt -1))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (* (sqrt im) (sqrt -1)))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))))))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (+ (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))) (* (sqrt (/ 1 (pow im 11))) (* (sqrt -1) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6)))))))))
(* -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 (+ (* (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)))))))
Outputs
im
(+ im re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 re im) #s(literal 1/2 binary64) #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re im)
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/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/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 im re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
(/ (+ (* 4 (pow re 2)) (pow im 2)) re)
(/.f64 (fma.f64 #s(literal 4 binary64) (*.f64 re re) (*.f64 im im)) re)
(* 1/2 (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 (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)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) re (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) #s(literal 1/2 binary64)))
(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 (pow.f64 re #s(literal 3 binary64)) (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)))) (fma.f64 re (/.f64 #s(literal 1 binary64) im) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(* (pow 1 1/4) (sqrt im))
(sqrt.f64 im)
(+ (* 1/4 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 3))) (pow re 2)))) (* (pow 1 1/4) (sqrt im)))
(fma.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 7))) (pow re 2)))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -3/32 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 re re) (sqrt.f64 im))
(+ (* (pow 1 1/4) (sqrt im)) (* (pow re 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow im 3))))) (* (pow re 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow im 7))))) (* 7/128 (* (pow 1 1/4) (* (sqrt (/ 1 (pow im 11))) (pow re 2)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 re re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) #s(literal -3/32 binary64))) (*.f64 re re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 re re) (sqrt.f64 im))
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im)) (*.f64 re re) im)
(+ (* (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 (/.f64 #s(literal 1 binary64) im) #s(literal 2 binary64))) (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) (*.f64 im im)) (pow.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (*.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))))) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64)))) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 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 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64)))) re)
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(sqrt.f64 re)
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.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 #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 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))) re)
(* (sqrt re) (pow (sqrt 2) 2))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) #s(literal 2 binary64)))) re)
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 9 binary64)))) (fma.f64 #s(literal -1/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 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 6 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 #s(literal 1/8 binary64) re) (/.f64 (*.f64 im im) re) (*.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 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 #s(literal 1/8 binary64) re) (/.f64 (*.f64 im im) re) (*.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 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 #s(literal 1/8 binary64) re) (/.f64 (*.f64 im im) re) (*.f64 (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))) #s(literal 1/2 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 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (+.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 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (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))) (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 (/.f64 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (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))) (log.f64 re)))) (log.f64 #s(literal 4 binary64)))
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re)))
(+ (sqrt re) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt (/ 1 (pow re 7))) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))) (* (sqrt (/ 1 (pow re 11))) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6))))))))
(+.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))))) (sqrt.f64 re))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (*.f64 (/.f64 im re) (/.f64 im re)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64)))) re re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re)
(* 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 (/ (pow im 2) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re))) (neg.f64 re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (/.f64 #s(literal -1/8 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(/.f64 (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 (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 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (*.f64 (*.f64 (*.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 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) im)) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.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 -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 #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 (*.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 (/ (+ (* -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 (/ (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))
(* -1 (* re (- (* -1 (/ (pow im 2) (pow re 2))) 4)))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (*.f64 im im) re) #s(literal -4 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 #s(literal -1/8 binary64) re) (/.f64 (*.f64 im im) re)))
(+ (* -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 (*.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 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (*.f64 im im) re))))
(+ (* -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 (*.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 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))) #s(literal 1/2 binary64) (*.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (*.f64 im im) re)))))
(+ (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)))))
(fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.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))) (* 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 #s(literal 1/24 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (pow.f64 re #s(literal 4 binary64))))) (log.f64 (*.f64 im im))) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(* (sqrt re) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (sqrt -1)))
(fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re)))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4)))))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -3/32 binary64) (fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re))))
(+ (* 1/4 (* (* (pow im 2) (sqrt -1)) (sqrt (/ 1 (pow re 3))))) (+ (* (sqrt re) (sqrt -1)) (+ (* (sqrt (/ 1 (pow re 7))) (* (sqrt -1) (+ (* -1/8 (pow im 4)) (* 1/32 (pow im 4))))) (* (sqrt (/ 1 (pow re 11))) (* (sqrt -1) (+ (* -1/32 (pow im 6)) (+ (* 1/384 (pow im 6)) (* 1/12 (pow im 6)))))))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal -1 binary64))) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 re) (fma.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (*.f64 (*.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64))))) (sqrt.f64 #s(literal -1 binary64))))))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im 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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im 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 #s(literal 1/2 binary64) re) (/.f64 (*.f64 im im) re) (/.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 re #s(literal 4 binary64))))) re re))
(* (* 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 (/ (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))
(+ (* 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/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 (*.f64 im im) #s(literal -1/2 binary64)) (*.f64 (+.f64 (/.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 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 (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 #s(literal 1/8 binary64) re) (/.f64 (*.f64 im im) re)))
(+ (* 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 #s(literal 1/4 binary64) re) (/.f64 (*.f64 im im) re) (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 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -3/32 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (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)))
(+ (log 2) (log im))
(+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))
(* (pow 1 1/4) (sqrt re))
(sqrt.f64 re)
(+ (* 1/4 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 3)))))) (* (pow 1 1/4) (sqrt re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 re))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 7)))))) (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (* (pow 1 1/4) (sqrt re)) (* (pow im 2) (+ (* 1/4 (* (pow 1 1/4) (sqrt (/ 1 (pow re 3))))) (* (pow im 2) (+ (* -3/32 (* (pow 1 1/4) (sqrt (/ 1 (pow re 7))))) (* 7/128 (* (pow 1 1/4) (* (pow im 2) (sqrt (/ 1 (pow re 11)))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 7/128 binary64) (*.f64 im im)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 11 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 binary64)))) #s(literal -3/32 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 5 binary64))) #s(literal 1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/2 binary64) re)) (*.f64 im im) re)
(+ (* 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 #s(literal -5/64 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 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)))
(* 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)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/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/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/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/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* 1/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)
(* (pow im 2) (+ (* 4 (/ re (pow im 2))) (/ 1 re)))
(*.f64 (*.f64 (fma.f64 (/.f64 re (*.f64 im im)) #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) re)) im) 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 (+.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 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im))) (log.f64 im)) (log.f64 #s(literal 2 binary64)))
(sqrt im)
(sqrt.f64 im)
(+ (sqrt im) (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))))
(fma.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))))
(fma.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64)))) (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 im)))
(+ (sqrt im) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (pow re 2))) (+ (* (sqrt (/ 1 (pow im 7))) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))) (* (sqrt (/ 1 (pow im 11))) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6))))))))
(+.f64 (fma.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64)))) (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64))))))) (sqrt.f64 im))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 im #s(literal 4 binary64))))) im im)
(* 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 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 re) im) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (/.f64 #s(literal -1/8 binary64) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) im)) (neg.f64 im))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/2 binary64) (*.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))) (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 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/2 binary64) (*.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)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (-.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64))) #s(literal 1/2 binary64) (*.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 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (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 (/.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/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 (/.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/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 (/.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/2 binary64))) (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) re) re) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 im)) #s(literal 3/8 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 im))
(* -2 im)
(*.f64 #s(literal -2 binary64) im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(*.f64 (fma.f64 #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/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))
(+ (log -1) (+ (log 2) (* -1 (log (/ -1 im)))))
(+.f64 (log.f64 #s(literal -1 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))
(* (sqrt im) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (* (sqrt im) (sqrt -1)))
(fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im)))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4)))))))
(fma.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im))))
(+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* (pow re 2) (sqrt -1)))) (+ (* (sqrt im) (sqrt -1)) (+ (* (sqrt (/ 1 (pow im 7))) (* (sqrt -1) (+ (* -1/8 (pow re 4)) (* 1/32 (pow re 4))))) (* (sqrt (/ 1 (pow im 11))) (* (sqrt -1) (+ (* -1/32 (pow re 6)) (+ (* 1/384 (pow re 6)) (* 1/12 (pow re 6)))))))))
(fma.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal 1/4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 6 binary64)) #s(literal 7/128 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 11 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) #s(literal -3/32 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 7 binary64))))) (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 im)))))
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1/16 binary64) (fma.f64 (/.f64 (*.f64 re re) im) (/.f64 #s(literal 1/2 binary64) 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 (+ (* (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) (pow.f64 im #s(literal 3 binary64)))) re) (/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 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 #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))

rewrite168.0ms (2.3%)

Memory
-2.1MiB live, 222.5MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

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

eval84.0ms (1.2%)

Memory
2.0MiB live, 155.9MiB allocated
Compiler

Compiled 21 413 to 3 442 computations (83.9% saved)

prune31.0ms (0.4%)

Memory
-16.1MiB live, 71.3MiB allocated
Pruning

28 alts after pruning (20 fresh and 8 done)

PrunedKeptTotal
New6209629
Fresh61117
Picked145
Done044
Total62728655
Accuracy
95.3%
Counts
655 → 28
Alt Table
Click to see full alt table
StatusAccuracyProgram
19.5%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
28.3%
(*.f64 (sqrt.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
76.5%
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
81.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
75.7%
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
19.5%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
51.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) 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.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
52.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
28.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))
51.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
19.9%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
47.4%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
43.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
7.3%
(*.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))))
14.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
71.3%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
75.9%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
18.6%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))))
16.0%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))) #s(literal 1/2 binary64))))
47.0%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64))))) (*.f64 (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))))) (+.f64 (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64))))))) #s(literal 1/2 binary64))))
16.7%
(*.f64 #s(literal 1/2 binary64) (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))))
47.6%
(*.f64 #s(literal 1/2 binary64) (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))))
47.1%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (log.f64 (*.f64 im #s(literal 1/2 binary64))))))) #s(literal 1/2 binary64))))
28.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 1 285 to 839 computations (34.7% saved)

simplify91.0ms (1.3%)

Memory
11.6MiB live, 120.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 5 (0.0ms)

IterNodesCost
051384
081319
1129311
2200301
3386301
4691297
51938289
63505289
77903289
08009289
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64)))
(*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(log.f64 (+.f64 (hypot.f64 re im) re))
(+.f64 (hypot.f64 re im) re)
(hypot.f64 re im)
re
im
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(+.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.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)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(*.f64 (*.f64 (neg.f64 im) im) im)
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
(*.f64 re im)
re
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
#s(literal 1/2 binary64)
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(exp.f64 #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
(log.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im
Outputs
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.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 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(+.f64 (hypot.f64 im re) re)
(log.f64 (+.f64 (hypot.f64 re im) re))
(log.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
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(+.f64 im re)
im
re
#s(literal 2 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (+.f64 im re) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (+.f64 im re) #s(literal 2 binary64))))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (+.f64 im re) #s(literal 2 binary64)))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 (+.f64 im re) #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)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(/.f64 (*.f64 (neg.f64 im) im) re)
(*.f64 (*.f64 (neg.f64 im) im) im)
(neg.f64 (pow.f64 im #s(literal 3 binary64)))
(*.f64 (neg.f64 im) im)
(neg.f64 im)
im
(*.f64 re im)
(*.f64 im re)
re
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(exp.f64 #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
(log.f64 (*.f64 #s(literal 2 binary64) im))
(*.f64 #s(literal 2 binary64) im)
#s(literal 2 binary64)
im

localize274.0ms (3.8%)

Memory
13.5MiB live, 339.3MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0
(exp.f64 #s(literal 1/2 binary64))
accuracy0.00390625
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
accuracy5.3158589556691505
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
accuracy28.48734618640322
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
accuracy0.0859375
(*.f64 (*.f64 (neg.f64 im) im) im)
accuracy4.011009563934142
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))))
accuracy20.364085795460642
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
accuracy47.0745685840747
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))
accuracy0.00390625
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
accuracy4.011009563934142
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
accuracy7.531703731265649
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
accuracy29.59356034104854
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
accuracy0.00390625
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
accuracy0.0078125
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
accuracy4.011009563934142
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
accuracy29.59318359893031
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
accuracy4.011009563934142
(sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64)))
accuracy5.093455250135334
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
accuracy6.637676842660903
(log.f64 (+.f64 (hypot.f64 re im) re))
accuracy7.764457661877266
(+.f64 (hypot.f64 re im) re)
Samples
121.0ms196×0valid
54.0ms19×3valid
23.0ms19×2valid
16.0ms22×1valid
Compiler

Compiled 886 to 93 computations (89.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 186.0ms
ival-mult: 80.0ms (43.1% of total)
ival-exp: 33.0ms (17.8% of total)
ival-hypot: 14.0ms (7.5% of total)
ival-pow: 14.0ms (7.5% of total)
ival-sqrt: 13.0ms (7% of total)
ival-log: 13.0ms (7% of total)
ival-add: 8.0ms (4.3% of total)
adjust: 6.0ms (3.2% of total)
ival-div: 4.0ms (2.2% of total)
ival-neg: 1.0ms (0.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series32.0ms (0.4%)

Memory
6.0MiB live, 50.2MiB allocated
Counts
23 → 180
Calls
Call 1
Inputs
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64)))
(*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(exp.f64 #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
(+.f64 (hypot.f64 re im) re)
(log.f64 (+.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (neg.f64 im) im) im)
Outputs
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(* -1 (/ (pow im 2) re))
(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))))
(log im)
(+ (log im) (/ re im))
(+ (log im) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log im) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (* 2 (/ im re))))
(* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))))
(exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (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)))))))
(+ (log 2) (* -1 (log (/ 1 re))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* -1 (* re (- (* -2 (/ im re)) 2)))
(* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))))
(exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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)) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (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)))))))
(+ (log (* 1/2 (pow im 2))) (log (/ -1 re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(sqrt re)
(+ (sqrt re) (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(+ (sqrt re) (* (pow im 2) (+ (* -5/128 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (sqrt re) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/128 (sqrt (/ 1 (pow re 7)))) (* 21/1024 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(* 2 (sqrt 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))))))))))
(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))))))
(log (* 2 re))
(+ (log (* 2 re)) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (log (* 2 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (log (* 2 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 (pow im 3))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(+ (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)))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (/ re im))
(+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))
(+ (* -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))))
(* -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/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))))
(+ (* -1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/2 (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) 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))))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(+ (* -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
8.0ms
re
@inf
((exp (log (+ (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) 1/2) (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (+ (* (/ re im) 2) 2) im) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (* (* (neg im) im) im) (* re im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)))) (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (sqrt (+ (* re re) (* im im))) re) (log (+ (sqrt (+ (* re re) (* im im))) re)) (* (* (neg im) im) im))
5.0ms
re
@-inf
((exp (log (+ (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) 1/2) (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (+ (* (/ re im) 2) 2) im) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (* (* (neg im) im) im) (* re im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)))) (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (sqrt (+ (* re re) (* im im))) re) (log (+ (sqrt (+ (* re re) (* im im))) re)) (* (* (neg im) im) im))
4.0ms
im
@0
((exp (log (+ (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) 1/2) (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (+ (* (/ re im) 2) 2) im) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (* (* (neg im) im) im) (* re im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)))) (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (sqrt (+ (* re re) (* im im))) re) (log (+ (sqrt (+ (* re re) (* im im))) re)) (* (* (neg im) im) im))
4.0ms
im
@inf
((exp (log (+ (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) 1/2) (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (+ (* (/ re im) 2) 2) im) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (* (* (neg im) im) im) (* re im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)))) (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (sqrt (+ (* re re) (* im im))) re) (log (+ (sqrt (+ (* re re) (* im im))) re)) (* (* (neg im) im) im))
3.0ms
im
@-inf
((exp (log (+ (sqrt (+ (* re re) (* im im))) re))) (* (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) 1/2) (sqrt (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2)) (* (exp (log (+ (sqrt (+ (* re re) (* im im))) re))) 2) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (* (+ (* (/ re im) 2) 2) im) (* (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) 1/2) (sqrt (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2)) (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/ (* (* (neg im) im) im) (* re im)) (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re))) (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (* 1/2 (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)))) (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+ (sqrt (+ (* re re) (* im im))) re) (log (+ (sqrt (+ (* re re) (* im im))) re)) (* (* (neg im) im) im))

simplify208.0ms (2.9%)

Memory
2.3MiB live, 192.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08215345
125884778
083614527
Stop Event
iter limit
node limit
Counts
180 → 179
Calls
Call 1
Inputs
im
(+ im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(* 1/2 (* (sqrt im) (sqrt 2)))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/32 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/16 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))))
(* (sqrt im) (sqrt 2))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/8 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))) (* (sqrt im) (sqrt 2)))
(+ (* re (+ (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))) (* re (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* re (sqrt 2)))) (* 1/8 (* (sqrt (/ 1 (pow im 3))) (sqrt 2))))))) (* (sqrt im) (sqrt 2)))
(* 2 im)
(+ (* 2 im) (* 2 re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(* -1 (/ (pow im 2) re))
(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))))
(log im)
(+ (log im) (/ re im))
(+ (log im) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(+ (log im) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(* 2 re)
(* re (+ 2 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (* (sqrt re) (pow (sqrt 2) 2)))
(* re (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* re (+ (* -1/32 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/64 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))))
(* (sqrt re) (pow (sqrt 2) 2))
(* re (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2)))))
(* re (+ (* -1/16 (* (pow im 4) (sqrt (/ 1 (pow re 9))))) (+ (* -1/32 (* (/ (pow im 4) (pow (sqrt 2) 2)) (sqrt (/ 1 (pow re 9))))) (+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 5))))) (* (sqrt (/ 1 re)) (pow (sqrt 2) 2))))))
(* 4 re)
(* re (+ 4 (/ (pow im 2) (pow re 2))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (/ (pow im 2) (pow re 2)))))
(* re (+ 4 (+ (* -1/4 (/ (pow im 4) (pow re 4))) (+ (* 1/8 (/ (pow im 6) (pow re 6))) (/ (pow im 2) (pow re 2))))))
(* re (+ 2 (* 2 (/ im re))))
(* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))))
(exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(+ (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)))))))
(+ (log 2) (* -1 (log (/ 1 re))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (* 1/4 (/ (pow im 2) (pow re 2)))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(* -1/2 (/ (pow im 2) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (* 1/2 (pow im 2))) re))
(* -1 (/ (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2)))) re))
(* -1 (/ (+ (* -1/2 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/8 (/ (pow im 4) (pow re 2))) (+ (* 1/16 (/ (pow im 6) (pow re 4))) (* 1/2 (pow im 2))))) re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(* -1 (* re (- (* -2 (/ im re)) 2)))
(* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))))
(exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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)) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(+ (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)))))))
(+ (log (* 1/2 (pow im 2))) (log (/ -1 re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+ (* 1/2 (/ (pow im 2) re)) (* 2 re))
(+ (* 2 re) (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ (* 2 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(+ (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* -1/4 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (* 1/2 (* (sqrt re) (pow (sqrt 2) 2))) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/4 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/4 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 1/4 (* (pow im 2) (sqrt (/ 1 (pow re 3))))) (* (sqrt re) (pow (sqrt 2) 2)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* -1/2 (* (* (pow im 2) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3))))) (sqrt (/ 1 re)))) (* 1/4 (sqrt (/ 1 (pow re 3)))))))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(+ (* 4 re) (/ (pow im 2) re))
(+ (* 4 re) (* (pow im 2) (+ (* -1/4 (/ (pow im 2) (pow re 3))) (/ 1 re))))
(+ (* 4 re) (* (pow im 2) (+ (* (pow im 2) (- (* 1/8 (/ (pow im 2) (pow re 5))) (* 1/4 (/ 1 (pow re 3))))) (/ 1 re))))
(sqrt re)
(+ (sqrt re) (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(+ (sqrt re) (* (pow im 2) (+ (* -5/128 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(+ (sqrt re) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/128 (sqrt (/ 1 (pow re 7)))) (* 21/1024 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(* 2 (sqrt 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))))))))))
(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))))))
(log (* 2 re))
(+ (log (* 2 re)) (* 1/4 (/ (pow im 2) (pow re 2))))
(+ (log (* 2 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(+ (log (* 2 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 (pow im 3))
(* im (+ 1 (/ re im)))
(* im (+ 1 (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/2 (/ (pow re 2) (pow im 2))) (/ re im)))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ (* -1/16 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))))
(* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2)))))
(* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (sqrt 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* (sqrt (/ 1 im)) (sqrt 2))))))
(* im (+ 2 (* 2 (/ re im))))
(* im (+ 2 (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2)))))
(* im (+ 2 (+ (* -1/4 (/ (pow re 4) (pow im 4))) (+ (* 2 (/ re im)) (/ (pow re 2) (pow im 2))))))
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(+ (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)))))
(* -1 (log (/ 1 im)))
(+ (* -1 (log (/ 1 im))) (/ re im))
(+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))
(+ (* -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))))
(* -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/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1/8 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(* -1 (* im (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))
(* -1 (* im (+ (* -1/4 (* (sqrt (/ 1 (pow im 5))) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(* -2 im)
(* -1 (* im (+ 2 (* -2 (/ re im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (pow re 2) im)) (* 2 re)) im)))))
(* -1 (* im (+ 2 (* -1 (/ (+ (* -1 (/ (+ (* -1/4 (/ (pow re 4) (pow im 2))) (pow re 2)) im)) (* 2 re)) im)))))
(* -1 (* im (- (* -2 (/ re im)) 2)))
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))))
(+ (* -1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/2 (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) 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))))
(* -1 (log (/ -1 im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ re im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(+ (* -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
im
(+ im re)
(+.f64 im re)
(+ im (* re (+ 1 (* 1/2 (/ re im)))))
(fma.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) re #s(literal 1 binary64)) re im)
(+ im (* re (+ 1 (* re (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))))
(fma.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) #s(literal -1/8 binary64) (/.f64 #s(literal 1/2 binary64) im)) re #s(literal 1 binary64)) re im)
(* 1/2 (* (sqrt im) (sqrt 2)))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im))
(+ (* 1/4 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* 1/2 (* (sqrt im) (sqrt 2))))
(fma.f64 (*.f64 re #s(literal 1/4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(+ (* 1/2 (* (sqrt im) (sqrt 2))) (* re (+ (* 1/16 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/4 (* (sqrt (/ 1 im)) (sqrt 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 (*.f64 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/16 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/32 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 im)))
(* (sqrt im) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im))
(+ (* 1/2 (* (sqrt (/ 1 im)) (* re (sqrt 2)))) (* (sqrt im) (sqrt 2)))
(fma.f64 (*.f64 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/8 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 5 binary64)))))) re)) re (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 im)))
(* 2 im)
(*.f64 #s(literal 2 binary64) im)
(+ (* 2 im) (* 2 re))
(*.f64 #s(literal 2 binary64) (+.f64 im re))
(+ (* 2 im) (* re (+ 2 (/ re im))))
(fma.f64 (+.f64 (/.f64 re im) #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(+ (* 2 im) (* re (+ 2 (* re (+ (* -1/4 (/ (pow re 2) (pow im 3))) (/ 1 im))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im)) re #s(literal 2 binary64)) re (*.f64 #s(literal 2 binary64) im))
(* -1 (/ (pow im 2) re))
(/.f64 (*.f64 (neg.f64 im) im) re)
(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 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 3/40 binary64) (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (+.f64 (log.f64 (*.f64 #s(literal 2 binary64) im)) (/.f64 re im)))
(log im)
(log.f64 im)
(+ (log im) (/ re im))
(+.f64 (log.f64 im) (/.f64 re im))
(+ (log im) (* re (+ (* -1/6 (/ (pow re 2) (pow im 3))) (/ 1 im))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 re re) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) im)) re (log.f64 im))
(+ (log im) (* re (+ (* (pow re 2) (- (* 3/40 (/ (pow re 2) (pow im 5))) (* 1/6 (/ 1 (pow im 3))))) (/ 1 im))))
(fma.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 re re) (pow.f64 im #s(literal 5 binary64))) #s(literal 3/40 binary64) (/.f64 #s(literal -1/6 binary64) (pow.f64 im #s(literal 3 binary64)))) (+.f64 (log.f64 im) (/.f64 re im)))
(* 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)
(* 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)
(* re (+ 2 (* 2 (/ im re))))
(*.f64 (fma.f64 (/.f64 im re) #s(literal 2 binary64) #s(literal 2 binary64)) re)
(* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) #s(literal 1/2 binary64))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))))
(fma.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 re re)) (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) #s(literal 1/2 binary64)))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -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/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 im im)) re) (*.f64 #s(literal 1/2 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/64 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))))))
(+ (* 1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -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/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 im im)) re) (*.f64 #s(literal 1/2 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/384 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/1440 binary64) (*.f64 #s(literal 1/3072 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/64 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))))))
(exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))))
(fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/64 binary64))) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 re re)) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64))))))
(+ (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re))))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/3072 (pow im 6)) (+ (* 1/1440 (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6))))) (* 1/384 (* (pow im 2) (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))))) (pow re 6)) (/ (* (exp (* 1/2 (+ (log 4) (* -1 (log (/ 1 re)))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4)))))) (pow re 4)))))
(fma.f64 (/.f64 #s(literal 1/8 binary64) re) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (*.f64 im im)) re) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 binary64)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/384 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/1440 binary64) (*.f64 #s(literal 1/3072 binary64) (pow.f64 im #s(literal 6 binary64))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -3/64 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 re) (log.f64 #s(literal 4 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 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (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) (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 (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (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) (log.f64 re)))) (log.f64 #s(literal 4 binary64)))
(+ (log 2) (* -1 (log (/ 1 re))))
(+.f64 (log.f64 #s(literal 2 binary64)) (log.f64 re))
(+ (log 2) (+ (* -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 #s(literal 2 binary64)) (log.f64 re)))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2))))))
(+.f64 (log.f64 #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (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) (log.f64 re))))
(+ (log 2) (+ (* -1 (log (/ 1 re))) (+ (* 1/720 (/ (+ (* 15/4 (pow im 6)) (+ (* 45/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (+ (* 1/24 (/ (+ (* -3/2 (pow im 4)) (* -3/4 (pow im 4))) (pow re 4))) (* 1/4 (/ (pow im 2) (pow re 2)))))))
(+.f64 (log.f64 #s(literal 2 binary64)) (fma.f64 (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 75/2 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/720 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/4 binary64) (*.f64 re re)) im) im (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) (log.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 (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (/.f64 (*.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 1/16 binary64)) (pow.f64 re #s(literal 4 binary64)))))) (neg.f64 re))
(* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))
(+ (* 1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/32 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/64 binary64) (*.f64 (*.f64 #s(literal -1/32 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/32 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/1024 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/64 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* 1/2 (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re)))))
(fma.f64 im (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 1/2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.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 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(+ (* 1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 5))))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal -1 binary64)))) im (*.f64 (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 5 binary64))))) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3)))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) #s(literal 1/32 binary64) (*.f64 (*.f64 #s(literal -1/16 binary64) (sqrt.f64 re)) (/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 im #s(literal 3 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(+ (* -1 (/ (+ (* -1/16 (* (/ (* (pow im 3) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt re))) (+ (* 1/512 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (pow (sqrt 1/2) 3)) (sqrt (/ 1 (pow re 3))))) (* 1/32 (* (/ (* (pow im 5) (* (sqrt -1) (sqrt 2))) (sqrt 1/2)) (sqrt (/ 1 (pow re 3))))))) (pow re 3))) (* (* im (* (sqrt -1) (* (sqrt 1/2) (sqrt 2)))) (sqrt (/ 1 re))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im (sqrt.f64 #s(literal -1 binary64)))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 im #s(literal 3 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))) (sqrt.f64 re) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/512 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal 1/32 binary64) (pow.f64 im #s(literal 5 binary64))) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 1/2 binary64))))))) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (pow im 2)) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (*.f64 im im)) (neg.f64 re))
(* -1 (/ (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2))) re))
(/.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (neg.f64 re))
(* -1 (/ (+ (* -1 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow re 6))) (+ (* -1/4 (/ (pow im 4) (pow re 2))) (+ (* 1/8 (/ (pow im 6) (pow re 4))) (pow im 2)))) re))
(/.f64 (-.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) re) (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) (*.f64 im im))) (/.f64 (*.f64 (pow.f64 im #s(literal 8 binary64)) #s(literal 5/64 binary64)) (pow.f64 re #s(literal 6 binary64)))) (neg.f64 re))
(* -1 (* re (- (* -2 (/ im re)) 2)))
(*.f64 (neg.f64 re) (fma.f64 #s(literal -2 binary64) (/.f64 im re) #s(literal -2 binary64)))
(* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))))
(fma.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) #s(literal 1/2 binary64)))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 3/64 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))))
(+ (* -1/16 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (* 1/2 (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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/2 (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (*.f64 re re)) (*.f64 #s(literal 1/2 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/384 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (*.f64 im im) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) im) (/.f64 #s(literal 5/64 binary64) im)) #s(literal -1/2 binary64) (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 5/384 binary64) (*.f64 #s(literal -1/3072 binary64) (pow.f64 im #s(literal 6 binary64)))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 3/64 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))))
(exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 3/64 binary64))) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(+ (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/8 (/ (* (pow im 2) (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2)))))) (pow re 2))) (+ (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* -1/384 (* (pow im 2) (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))))) (+ (* -1/3072 (pow im 6)) (* 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)) (/ (* (exp (* 1/2 (+ (log (/ -1 re)) (log (pow im 2))))) (+ (* 1/128 (pow im 4)) (* 1/48 (+ (* -3/4 (pow im 4)) (* 3 (pow im 4)))))) (pow re 4)))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))) (+.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/384 binary64) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 9/4 binary64))) (*.f64 im im) (fma.f64 (*.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) im) (/.f64 #s(literal 5/64 binary64) im)) #s(literal -1/2 binary64) (fma.f64 (pow.f64 im #s(literal 6 binary64)) #s(literal 5/384 binary64) (*.f64 #s(literal -1/3072 binary64) (pow.f64 im #s(literal 6 binary64)))))) (pow.f64 re #s(literal 6 binary64))) (/.f64 (fma.f64 #s(literal 1/128 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal 3/64 binary64))) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
(+ (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)))))
(fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.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))) (* 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)))
(+ (log (* 1/2 (pow im 2))) (log (/ -1 re)))
(+.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 (/.f64 #s(literal -1 binary64) re)))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (* -1/4 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 (/.f64 #s(literal -1 binary64) re))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4))))))
(+.f64 (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 #s(literal -1 binary64) re)))) (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))))
(+ (log (* 1/2 (pow im 2))) (+ (log (/ -1 re)) (+ (* -1/4 (/ (pow im 2) (pow re 2))) (+ (* 1/720 (/ (+ (* -720 (/ (+ (* 1/64 (pow im 8)) (* 1/16 (pow im 8))) (pow im 2))) (+ (* -15/4 (pow im 6)) (* 45/2 (pow im 6)))) (pow re 6))) (* 1/24 (/ (+ (* -3/4 (pow im 4)) (* 3 (pow im 4))) (pow re 4)))))))
(+.f64 (+.f64 (fma.f64 (/.f64 #s(literal -1/4 binary64) re) (/.f64 (*.f64 im im) re) (log.f64 (/.f64 #s(literal -1 binary64) re))) (fma.f64 (/.f64 (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) (/.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 (*.f64 im im) #s(literal 1/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))
(+ (* 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/8 binary64))) (*.f64 im im) (*.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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* (sqrt re) (pow (sqrt 2) 2)) (* (pow im 2) (+ (* 1/4 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -1/2 (* (sqrt (/ 1 re)) (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))))) (* 1/2 (* (* (pow im 2) (- (* 1/16 (/ 1 (pow re 5))) (* -1/4 (/ (+ (* 1/16 (/ 1 (* (pow re 3) (pow (sqrt 2) 2)))) (* 1/8 (/ 1 (pow re 3)))) (* (pow re 2) (pow (sqrt 2) 2)))))) (sqrt (/ 1 re)))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 im im)) (-.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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 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/16 binary64) (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 2 binary64))) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) re)))) (*.f64 im im) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 3 binary64)))) #s(literal 1/4 binary64))) (*.f64 im im) (*.f64 (sqrt.f64 re) #s(literal 2 binary64)))
(+ (* 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))
(sqrt re)
(sqrt.f64 re)
(+ (sqrt re) (* 1/8 (* (pow im 2) (sqrt (/ 1 (pow re 3))))))
(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))
(+ (sqrt re) (* (pow im 2) (+ (* -5/128 (* (pow im 2) (sqrt (/ 1 (pow re 7))))) (* 1/8 (sqrt (/ 1 (pow re 3)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 im im) #s(literal -5/128 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/8 binary64))) (*.f64 im im) (sqrt.f64 re))
(+ (sqrt re) (* (pow im 2) (+ (* 1/8 (sqrt (/ 1 (pow re 3)))) (* (pow im 2) (+ (* -5/128 (sqrt (/ 1 (pow re 7)))) (* 21/1024 (* (pow im 2) (sqrt (/ 1 (pow re 11))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 21/1024 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/128 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))
(* 2 (sqrt re))
(*.f64 (sqrt.f64 re) #s(literal 2 binary64))
(+ (* 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 #s(literal -5/64 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 re #s(literal 7 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)))
(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 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -3/32 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (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 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 6 binary64))) #s(literal 5/96 binary64) (/.f64 #s(literal -3/32 binary64) (pow.f64 re #s(literal 4 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (log.f64 (*.f64 #s(literal 4 binary64) re)))
(log (* 2 re))
(log.f64 (*.f64 #s(literal 2 binary64) re))
(+ (log (* 2 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 2 binary64) re)))
(+ (log (* 2 re)) (* (pow im 2) (+ (* -3/32 (/ (pow im 2) (pow re 4))) (* 1/4 (/ 1 (pow re 2))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 4 binary64))) #s(literal -3/32 binary64) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (log.f64 (*.f64 #s(literal 2 binary64) re)))
(+ (log (* 2 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 (/.f64 (*.f64 im im) (pow.f64 re #s(literal 6 binary64))) #s(literal 5/96 binary64) (/.f64 #s(literal -3/32 binary64) (pow.f64 re #s(literal 4 binary64)))) (*.f64 im im) (/.f64 #s(literal 1/4 binary64) (*.f64 re re))) (*.f64 im im) (log.f64 (*.f64 #s(literal 2 binary64) re)))
(* -1 (pow im 3))
(neg.f64 (pow.f64 im #s(literal 3 binary64)))
(* 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)
(* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (sqrt 2)))) (* 1/2 (* (sqrt (/ 1 im)) (sqrt 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im)))) im)
(* im (+ (* 1/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/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* -1/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/4 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) re)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) im))))) im)
(* im (+ (* 1/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)
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))) im))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -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/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (*.f64 #s(literal 1/2 binary64) (fma.f64 (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) im) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))))))
(+ (* 1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) (+ (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3))) (* 1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -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/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (*.f64 #s(literal 1/2 binary64) (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) (+.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/48 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64)))) (pow.f64 im #s(literal 3 binary64))) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) (*.f64 im im))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))))))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) im) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im))))))) im)) (+ (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) (pow im 3)) (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ 1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) (pow im 2)))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) (+.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/48 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64)))) (pow.f64 im #s(literal 3 binary64))) (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) (*.f64 im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64)))) im) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))))
(+ (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 (neg.f64 (pow.f64 re #s(literal 3 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)))
(* -1 (log (/ 1 im)))
(log.f64 im)
(+ (* -1 (log (/ 1 im))) (/ re im))
(+.f64 (log.f64 im) (/.f64 re im))
(+ (* -1 (log (/ 1 im))) (+ (* 1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) (pow im 2))) (/ re im)))
(+.f64 (+.f64 (/.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 re im)) (log.f64 im))
(+ (* -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))))
(fma.f64 (/.f64 (neg.f64 (pow.f64 re #s(literal 3 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)))
(* -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 (*.f64 (/.f64 re im) re) #s(literal -1/2 binary64) re) im)) (neg.f64 im))
(* -1 (* im (+ 1 (* -1 (/ (+ re (* -1 (/ (+ (* -1/8 (/ (pow re 4) (pow im 2))) (* 1/2 (pow re 2))) im))) im)))))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) im) (*.f64 (*.f64 re re) #s(literal 1/2 binary64))) im)) im)) (neg.f64 im))
(* -1/2 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 im)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal 2 binary64))))
(* -1 (* im (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) im)) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64))) (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 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/16 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/4 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* 1/2 (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/4 binary64) (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 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/16 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))) (neg.f64 im))
(* -1 (* (sqrt im) (* (sqrt -1) (sqrt 2))))
(*.f64 (*.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 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (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 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64)))) (neg.f64 im))
(* -1 (* im (+ (* -1 (/ (+ (* 1/8 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2))))) (* 1/4 (* (sqrt im) (* (pow re 2) (* (sqrt -1) (sqrt 2)))))) (pow im 3))) (+ (* 1/2 (* (sqrt (/ 1 (pow im 3))) (* re (* (sqrt -1) (sqrt 2))))) (* (sqrt (/ 1 im)) (* (sqrt -1) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (*.f64 re (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 im #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64) (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 (*.f64 re (*.f64 re (sqrt.f64 #s(literal -1 binary64)))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 im) #s(literal 3/8 binary64))) (neg.f64 (pow.f64 im #s(literal 3 binary64)))))) (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 (- (* -2 (/ re im)) 2)))
(*.f64 (fma.f64 #s(literal -2 binary64) (/.f64 re im) #s(literal -2 binary64)) (neg.f64 im))
(* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) #s(literal 1/2 binary64))
(+ (* -1/4 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))) im))
(+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (*.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) im) #s(literal -1/2 binary64)))) (neg.f64 im)))
(+ (* -1 (/ (+ (* -1 (/ (+ (* -1/2 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/2 (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* 1/4 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)) (* 1/2 (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))
(fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) #s(literal 1/2 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (*.f64 (/.f64 (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/48 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64)))) im) #s(literal -1/2 binary64)))) (neg.f64 im))) (neg.f64 im)))
(exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1/2 (/ (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))) im)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) im) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 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/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64))) (neg.f64 im))) im))
(+ (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (/ (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/48 (pow re 3)) (+ (* 1/12 (+ (* -3 (pow re 3)) (* 2 (pow re 3)))) (* 1/8 (* re (+ (* -1 (pow re 2)) (pow re 2))))))) im)) (* (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im)))))) (+ (* 1/8 (pow re 2)) (* 1/4 (+ (* -1 (pow re 2)) (pow re 2)))))) im)) (* 1/2 (* re (exp (* 1/2 (+ (log 2) (* -1 (log (/ -1 im))))))))) im)))
(-.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) re) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (/.f64 (fma.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 #s(literal 1/8 binary64) (*.f64 re re) #s(literal 0 binary64)) (/.f64 (*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) im)))) (fma.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal 1/48 binary64) (fma.f64 #s(literal 0 binary64) re (*.f64 (pow.f64 re #s(literal 3 binary64)) #s(literal -1/12 binary64))))) (neg.f64 im))) (neg.f64 im))) 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 (neg.f64 (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/6 binary64) #s(literal 0 binary64)) im)) im))
(* -1 (log (/ -1 im)))
(neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ re im)))
(-.f64 (/.f64 re (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ re (* -1/2 (/ (+ (* -1 (pow re 2)) (pow re 2)) im))) im)))
(-.f64 (/.f64 (+.f64 (/.f64 #s(literal 0 binary64) im) re) (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))
(+ (* -1 (log (/ -1 im))) (* -1 (/ (+ 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 (-.f64 re (/.f64 (fma.f64 (/.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) im) #s(literal -1/6 binary64) #s(literal 0 binary64)) im)) (neg.f64 im)) (log.f64 (/.f64 #s(literal -1 binary64) im)))

rewrite209.0ms (2.9%)

Memory
1.9MiB live, 199.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
051335
081270
1241252
21165250
08320250
Stop Event
iter limit
node limit
iter limit
Counts
23 → 380
Calls
Call 1
Inputs
(exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re)))
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64)))
(*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im)))
#s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im))))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(exp.f64 #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
(+.f64 (hypot.f64 re im) re)
(log.f64 (+.f64 (hypot.f64 re im) re))
(*.f64 (*.f64 (neg.f64 im) im) im)
Outputs
(*.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 re (hypot.f64 im re))))
(*.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (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)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (-.f64 (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))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (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 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 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 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (fma.f64 re (-.f64 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 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (exp.f64 (log.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re))) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (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 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (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 (fma.f64 re re (*.f64 (neg.f64 im) im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re)
(fma.f64 re #s(literal 1 binary64) (hypot.f64 im re))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 re (hypot.f64 im re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))
(exp.f64 (log.f64 (+.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(+.f64 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (+.f64 (hypot.f64 im re) re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))))
(*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (+.f64 (hypot.f64 im re) re)))
(*.f64 (sqrt.f64 (+.f64 (hypot.f64 im re) re)) (sqrt.f64 #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (sqrt.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (sqrt.f64 (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re)))))
(/.f64 (sqrt.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (sqrt.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))))))
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(literal 2 binary64) (+.f64 (hypot.f64 im re) re))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(*.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re)))))
(*.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))))))
(*.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 #s(literal 4 binary64) (*.f64 re re)) (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (*.f64 re re) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))) (neg.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))) (neg.f64 (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64)) (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (-.f64 (hypot.f64 im re) re))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re))) (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re))))
(/.f64 (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 im re) re) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (hypot.f64 im re) re) (*.f64 #s(literal 2 binary64) (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re))) (-.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (*.f64 #s(literal 4 binary64) (*.f64 re re)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (*.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re)))) (fma.f64 #s(literal 8 binary64) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (*.f64 #s(literal 8 binary64) (pow.f64 re #s(literal 3 binary64))))))
(/.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(fma.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (hypot.f64 im re))) (sqrt.f64 (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (*.f64 (sqrt.f64 (hypot.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (*.f64 #s(literal 2 binary64) re))
(fma.f64 #s(literal 2 binary64) re (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(fma.f64 (hypot.f64 im re) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) re))
(fma.f64 re #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(-.f64 (/.f64 (*.f64 #s(literal 4 binary64) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re)))) (/.f64 (*.f64 #s(literal 4 binary64) (*.f64 re re)) (fma.f64 #s(literal 2 binary64) (hypot.f64 im re) (neg.f64 (*.f64 #s(literal 2 binary64) re)))))
(+.f64 (*.f64 #s(literal 2 binary64) re) (*.f64 #s(literal 2 binary64) (hypot.f64 im re)))
(+.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 im re)) (*.f64 #s(literal 2 binary64) re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))))
(pow.f64 (exp.f64 (log.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)) (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)))
#s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))
(*.f64 (*.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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #s(literal 4 binary64) (*.f64 (/.f64 re im) #s(literal 4 binary64)))) #s(literal -1 binary64)))
(*.f64 (*.f64 im (+.f64 #s(literal 1 binary64) (/.f64 re 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 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im))) (-.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.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 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im)) (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))))) (-.f64 (*.f64 #s(literal 2 binary64) im) (*.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 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) im) #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 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im)) (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.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 #s(literal 2 binary64) im) #s(literal 3 binary64)) (pow.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 2 binary64) im) (*.f64 #s(literal 2 binary64) im) (-.f64 (*.f64 (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal 2 binary64) im) (*.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)) (neg.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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)))) (neg.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 (pow.f64 (/.f64 im re) #s(literal -2 binary64)) #s(literal 4 binary64) (-.f64 #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 #s(literal 2 binary64) im (*.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64))))
(fma.f64 im (*.f64 (/.f64 re im) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) im))
(fma.f64 im #s(literal 2 binary64) (*.f64 (*.f64 (/.f64 re im) #s(literal 2 binary64)) im))
(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 im (*.f64 (/.f64 re im) #s(literal 2 binary64))) (*.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 #s(literal 2 binary64) im) (*.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 (pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (*.f64 im im) #s(literal -1 binary64)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) (*.f64 im re)))
(*.f64 (/.f64 im #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 (pow.f64 im #s(literal 3 binary64)) im))
(*.f64 (pow.f64 (/.f64 (neg.f64 im) im) #s(literal -1 binary64)) (pow.f64 (/.f64 re (*.f64 im im)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (neg.f64 re) im) #s(literal -1 binary64)) (pow.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)) (/.f64 im re))
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) im) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) im) (/.f64 (pow.f64 im #s(literal 3 binary64)) re))
(*.f64 (/.f64 #s(literal -1 binary64) im) (/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 re)))
(*.f64 (/.f64 (neg.f64 im) im) (/.f64 (*.f64 im im) re))
(*.f64 (/.f64 (*.f64 im im) re) (/.f64 (neg.f64 im) im))
(*.f64 (/.f64 (neg.f64 im) re) im)
(*.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re))) (/.f64 #s(literal -1 binary64) im))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 (/.f64 (neg.f64 im) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)))
(*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (neg.f64 im) im))
(*.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 re (*.f64 (neg.f64 im) im)))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 im re) im))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 im im) re))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re)))
(*.f64 (pow.f64 (*.f64 im re) #s(literal -1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 im re) #s(literal -1 binary64)) (neg.f64 (pow.f64 im #s(literal 3 binary64))))
(*.f64 (/.f64 im re) (pow.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1 binary64)))
(*.f64 (/.f64 im re) (neg.f64 im))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (pow.f64 im #s(literal 3 binary64)) (/.f64 #s(literal -1 binary64) (*.f64 im re)))
(*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) #s(literal 1 binary64))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (pow.f64 (*.f64 im re) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 im) im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (neg.f64 im) (/.f64 im re))
(*.f64 (*.f64 im im) (/.f64 #s(literal 1 binary64) (neg.f64 re)))
(*.f64 im (/.f64 (neg.f64 im) re))
(pow.f64 (/.f64 re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) im)) (neg.f64 im))
(/.f64 (neg.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re)))) im)
(/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal -1 binary64)) (*.f64 (neg.f64 re) (neg.f64 im)))
(/.f64 (*.f64 (pow.f64 im #s(literal 3 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (neg.f64 im) re))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 im) im)) (*.f64 (/.f64 re im) im))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 im im)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (*.f64 im re)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (neg.f64 re)))
(/.f64 (*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) im) (*.f64 (fma.f64 im im #s(literal 0 binary64)) re))
(/.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im)) re)
(/.f64 (*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) im) im)
(/.f64 (*.f64 (*.f64 (neg.f64 im) im) (*.f64 im im)) (*.f64 im (*.f64 im re)))
(/.f64 (neg.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re))) (neg.f64 im))
(/.f64 (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 re)) im)
(/.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 re) (pow.f64 im #s(literal 3 binary64))) (neg.f64 im)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 re (*.f64 (neg.f64 im) im))))
(/.f64 #s(literal 1 binary64) (/.f64 re (/.f64 (pow.f64 im #s(literal 3 binary64)) (neg.f64 im))))
(/.f64 #s(literal 1 binary64) (/.f64 im (*.f64 (/.f64 (*.f64 (neg.f64 im) im) re) im)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 re (*.f64 (neg.f64 im) im)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (neg.f64 re) (pow.f64 im #s(literal 3 binary64))) im))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 im) im)))
(/.f64 (pow.f64 im #s(literal 3 binary64)) (*.f64 (neg.f64 im) re))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 (fma.f64 im im #s(literal 0 binary64)) (/.f64 re im)))
(/.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) (*.f64 im re))
(/.f64 (*.f64 (neg.f64 im) im) (*.f64 im (/.f64 re im)))
(/.f64 (*.f64 (neg.f64 im) im) (/.f64 re #s(literal 1 binary64)))
(/.f64 (*.f64 (neg.f64 im) im) re)
(/.f64 (neg.f64 im) (/.f64 re im))
(/.f64 (*.f64 im im) (neg.f64 re))
(neg.f64 (*.f64 (/.f64 im re) im))
(neg.f64 (/.f64 (*.f64 im im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (neg.f64 im) re)) (*.f64 (/.f64 im re) im))
(-.f64 (/.f64 #s(literal 0 binary64) re) (/.f64 (*.f64 im im) re))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 im re) im))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 im im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re (*.f64 (neg.f64 im) im))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))))
(*.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re)))
(exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64)))
#s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (neg.f64 im) im) re))
(*.f64 (*.f64 #s(literal 1/2 binary64) (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64))) (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) (*.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))))
(*.f64 (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (fma.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) (/.f64 (fma.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 2 binary64))))
(*.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 1 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (exp.f64 #s(literal 1 binary64)) #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
(pow.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (fma.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))
(sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
(exp.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))))
(exp.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 1 binary64))) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sqrt.f64 (exp.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))))) #s(literal 1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))))
(exp.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64) (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))))
(exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64)))
(exp.f64 #s(literal 1/2 binary64))
#s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))
(*.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) (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)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))
(*.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re re (-.f64 (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))) (pow.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal -1 binary64))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re))) (*.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))) (+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (fma.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)) (*.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))))
(/.f64 (neg.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (neg.f64 (-.f64 re (hypot.f64 im re))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (neg.f64 (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 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 4 binary64)) (+.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 2 binary64)))) (-.f64 (hypot.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 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 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (hypot.f64 im re) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 (*.f64 (hypot.f64 im re) re) #s(literal 3 binary64)))) (fma.f64 re (-.f64 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 (exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (exp.f64 (log.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (exp.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im 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 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (-.f64 (hypot.f64 im re) re)))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (hypot.f64 im re) re))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re (hypot.f64 im re)) (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re))) (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re)))
(/.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))) (fma.f64 re re (-.f64 (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 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (hypot.f64 im re))
(fma.f64 (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64))) re)
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 im re) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (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 (fma.f64 re re (*.f64 (neg.f64 im) im)))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64))) re)
(fma.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (pow.f64 (fma.f64 re re (*.f64 (neg.f64 im) im)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64))) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 im #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (pow.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (hypot.f64 im re))
(fma.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(fma.f64 (sqrt.f64 (hypot.f64 im re)) (sqrt.f64 (hypot.f64 im re)) re)
(fma.f64 re #s(literal 1 binary64) (hypot.f64 im re))
(-.f64 (/.f64 (*.f64 re re) (-.f64 re (hypot.f64 im re))) (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 re (hypot.f64 im re))))
(-.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re)))
(exp.f64 (log.f64 (+.f64 (hypot.f64 im re) re)))
(+.f64 (/.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (-.f64 (hypot.f64 im re) re)) (neg.f64 (/.f64 (*.f64 re re) (-.f64 (hypot.f64 im re) re))))
(+.f64 (hypot.f64 im re) re)
(+.f64 re (hypot.f64 im re))
(/.f64 (-.f64 (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (*.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) (log.f64 (-.f64 (hypot.f64 im re) re)))) (+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (hypot.f64 im re) re))))
(/.f64 (-.f64 (*.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (*.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))) (+.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) #s(literal 3 binary64)) (pow.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) #s(literal 3 binary64))) (fma.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (log.f64 (-.f64 (hypot.f64 im re) re)) (log.f64 (-.f64 (hypot.f64 im re) re)) (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (hypot.f64 im re) re))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (fma.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (*.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))))
(neg.f64 (log.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(-.f64 (log.f64 (-.f64 (*.f64 re re) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))) (log.f64 (-.f64 re (hypot.f64 im re))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re)))) (log.f64 (neg.f64 (-.f64 (hypot.f64 im re) re))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (-.f64 (hypot.f64 im re) re)))
(-.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (fma.f64 re re (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 (hypot.f64 im re) re)))))
(-.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)))))
(-.f64 #s(literal 0 binary64) (log.f64 (/.f64 #s(literal 1 binary64) (+.f64 (hypot.f64 im re) re))))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (log.f64 (-.f64 (hypot.f64 im re) re))))
(+.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 im re) #s(literal 2 binary64)) (*.f64 re re))) (log.f64 (pow.f64 (-.f64 (hypot.f64 im re) re) #s(literal -1 binary64))))
(+.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (neg.f64 (log.f64 (fma.f64 re (-.f64 re (hypot.f64 im re)) (pow.f64 (hypot.f64 im re) #s(literal 2 binary64))))))
(+.f64 (log.f64 (+.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 (hypot.f64 im re) #s(literal 3 binary64)))) (log.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))))
(log.f64 (+.f64 (hypot.f64 im re) re))
(*.f64 #s(literal -1 binary64) (pow.f64 im #s(literal 3 binary64)))
(*.f64 (neg.f64 (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 (neg.f64 im) im) im)
(*.f64 (neg.f64 im) (*.f64 im im))
(*.f64 (*.f64 im im) (neg.f64 im))
(*.f64 im (*.f64 (neg.f64 im) im))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 9 binary64))) (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 3 binary64))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 im #s(literal 3 binary64)))
(neg.f64 (pow.f64 im #s(literal 3 binary64)))
(-.f64 #s(literal 0 binary64) (pow.f64 im #s(literal 3 binary64)))
(+.f64 #s(literal 0 binary64) (neg.f64 (pow.f64 im #s(literal 3 binary64))))

eval90.0ms (1.2%)

Memory
-18.0MiB live, 147.6MiB allocated
Compiler

Compiled 17 422 to 2 637 computations (84.9% saved)

prune56.0ms (0.8%)

Memory
-7.3MiB live, 76.4MiB allocated
Pruning

35 alts after pruning (22 fresh and 13 done)

PrunedKeptTotal
New4907497
Fresh01515
Picked055
Done088
Total49035525
Accuracy
95.3%
Counts
525 → 35
Alt Table
Click to see full alt table
StatusAccuracyProgram
53.3%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/2 binary64))
19.5%
(*.f64 (*.f64 (sqrt.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)))) #s(literal 1/2 binary64)) (sqrt.f64 #s(literal 2 binary64)))
28.3%
(*.f64 (sqrt.f64 (/.f64 (*.f64 (fma.f64 (neg.f64 re) re (pow.f64 (hypot.f64 re im) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (hypot.f64 re im) re))) #s(literal 1/2 binary64))
76.5%
(*.f64 (sqrt.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
81.3%
(*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
75.7%
(*.f64 (sqrt.f64 (*.f64 (exp.f64 (log.f64 (+.f64 (hypot.f64 re im) re))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
14.5%
(*.f64 (sqrt.f64 (*.f64 (exp.f64 #s(approx (log (+ (sqrt (+ (* re re) (* im im))) re)) (fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.f64 (log.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64))) (log.f64 (/.f64 #s(literal -1 binary64) re)))))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
47.8%
(*.f64 (sqrt.f64 (*.f64 (exp.f64 #s(approx (log (+ (sqrt (+ (* re re) (* im im))) re)) (log.f64 im))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
53.7%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
19.5%
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) #s(literal 2 binary64))) #s(literal 1/2 binary64))
51.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) 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.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (/.f64 (*.f64 (neg.f64 im) im) re))) #s(literal 1/2 binary64))
52.7%
(*.f64 (sqrt.f64 #s(approx (* (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) 2) (*.f64 (fma.f64 (/.f64 re im) #s(literal 2 binary64) #s(literal 2 binary64)) im))) #s(literal 1/2 binary64))
28.3%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))
51.4%
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
19.9%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (pow.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
16.1%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))))
16.7%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))))
47.4%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (+.f64 (log.f64 im) (log.f64 #s(literal 2 binary64))))))
47.4%
(*.f64 #s(literal 1/2 binary64) (pow.f64 (exp.f64 #s(literal 1/2 binary64)) #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (log.f64 (*.f64 #s(literal 2 binary64) im)))))
43.4%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re))))
7.3%
(*.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))))
14.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (*.f64 (*.f64 (neg.f64 im) im) im) (*.f64 re im)))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))))
19.5%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (neg.f64 im) (/.f64 im re)))))
71.3%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sqrt.f64 (hypot.f64 re im)) (sqrt.f64 (hypot.f64 re im)) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
75.9%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))))
18.6%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 (log.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 (/.f64 (neg.f64 im) re) im))) #s(literal 1/2 binary64))))
16.0%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (fma.f64 (*.f64 (/.f64 im re) (/.f64 im re)) #s(literal -1/4 binary64) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re))))) #s(literal 1/2 binary64))))
47.0%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64))))) (*.f64 (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))))) (+.f64 (/.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (log.f64 (*.f64 im #s(literal 1/2 binary64))))))) #s(literal 1/2 binary64))))
16.7%
(*.f64 #s(literal 1/2 binary64) (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))))
47.6%
(*.f64 #s(literal 1/2 binary64) (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))))
47.1%
(*.f64 #s(literal 1/2 binary64) (exp.f64 (*.f64 #s(approx (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2)) (*.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 im) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (log.f64 (*.f64 im #s(literal 1/2 binary64))))))) #s(literal 1/2 binary64))))
15.4%
(*.f64 #s(literal 1/2 binary64) #s(approx (pow (exp 1/2) (log (* (+ (sqrt (+ (* im im) (* re re))) re) 2))) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 im im)) (/.f64 (pow.f64 (exp.f64 #s(literal 1/2 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/2 binary64)) (+.f64 (log.f64 (*.f64 im im)) (log.f64 (/.f64 #s(literal -1 binary64) re)))))))
28.0%
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Compiler

Compiled 2 305 to 932 computations (59.6% saved)

regimes107.0ms (1.5%)

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

7 calls:

18.0ms
im
16.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
15.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
14.0ms
re
13.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
84.1%2re
81.3%1im
88.5%2(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
88.5%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
88.3%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
88.3%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
81.3%1(*.f64 im im)
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes216.0ms (3%)

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

7 calls:

168.0ms
im
9.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))))
8.0ms
re
8.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
7.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
Results
AccuracySegmentsBranch
67.3%3im
67.3%3(*.f64 im im)
75.4%4re
74.5%4(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
74.5%4(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
74.6%4(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
74.6%4(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
Compiler

Compiled 55 to 45 computations (18.2% saved)

regimes51.0ms (0.7%)

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

5 calls:

23.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))))
7.0ms
re
7.0ms
(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
6.0ms
(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
6.0ms
(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
Results
AccuracySegmentsBranch
61.9%2(*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
61.9%2(+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
61.9%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))))
61.9%2(sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
71.1%3re
Compiler

Compiled 51 to 40 computations (21.6% saved)

regimes7.0ms (0.1%)

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

1 calls:

5.0ms
re
Results
AccuracySegmentsBranch
71.1%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes6.0ms (0.1%)

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

1 calls:

5.0ms
re
Results
AccuracySegmentsBranch
71.1%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes4.0ms (0.1%)

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

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
71.1%3re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes9.0ms (0.1%)

Memory
21.3MiB live, 21.3MiB allocated
Counts
7 → 3
Calls
Call 1
Inputs
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im))))
(*.f64 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (*.f64 #s(literal 2 binary64) im))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)))))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* im im) (* re re))) re) (+.f64 re im)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ (* (sqrt (sqrt (+ (* re re) (* im im)))) (sqrt (sqrt (+ (* re re) (* im im))))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 #s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re)) re))))
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #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
im
2.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
62.7%2(*.f64 im im)
62.7%2im
65.8%3re
Compiler

Compiled 5 to 7 computations (-40% saved)

regimes5.0ms (0.1%)

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

1 calls:

4.0ms
re
Results
AccuracySegmentsBranch
64.0%2re
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes9.0ms (0.1%)

Memory
16.0MiB live, 16.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

7 calls:

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

Compiled 55 to 45 computations (18.2% saved)

bsearch1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
5.716158716569841e-152
Compiler

Compiled 18 to 17 computations (5.6% saved)

bsearch59.0ms (0.8%)

Memory
-6.6MiB live, 75.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
1.8044207229519695e+115
5.360402415867395e+137
12.0ms
6.1799335234873025e-186
6.17563219902442e-184
22.0ms
-4.3806726934043505e+58
-1.947087758177583e+57
Samples
24.0ms337×0valid
5.0ms20×3valid
5.0ms26×2valid
2.0ms17×1valid
Compiler

Compiled 888 to 738 computations (16.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-hypot: 10.0ms (41.6% of total)
ival-mult: 6.0ms (25% of total)
ival-sqrt: 3.0ms (12.5% of total)
ival-add: 2.0ms (8.3% of total)
adjust: 1.0ms (4.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch7.0ms (0.1%)

Memory
16.6MiB live, 16.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
5.0ms
2.135620847714714e-65
2.7045751686141885e-65
1.0ms
-4.3806726934043505e+58
-1.947087758177583e+57
Samples
3.0ms48×0valid
Compiler

Compiled 484 to 367 computations (24.2% saved)

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

bsearch2.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
2.135620847714714e-65
2.7045751686141885e-65
1.0ms
-4.3806726934043505e+58
-1.947087758177583e+57
Compiler

Compiled 484 to 367 computations (24.2% saved)

bsearch2.0ms (0%)

Memory
2.5MiB live, 2.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
2.135620847714714e-65
2.7045751686141885e-65
1.0ms
-4.3806726934043505e+58
-1.947087758177583e+57
Compiler

Compiled 466 to 358 computations (23.2% saved)

bsearch5.0ms (0.1%)

Memory
-34.7MiB live, 3.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.135620847714714e-65
2.7045751686141885e-65
4.0ms
-4.3806726934043505e+58
-1.947087758177583e+57
Compiler

Compiled 416 to 328 computations (21.2% saved)

bsearch23.0ms (0.3%)

Memory
38.5MiB live, 38.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
2.135620847714714e-65
2.7045751686141885e-65
20.0ms
-5.94481949075508e+189
-6.190851624857455e+188
Samples
7.0ms25×3valid
5.0ms28×2valid
3.0ms24×1valid
1.0ms19×0valid
Compiler

Compiled 351 to 293 computations (16.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-hypot: 6.0ms (47.8% of total)
ival-mult: 2.0ms (15.9% of total)
ival-sqrt: 2.0ms (15.9% of total)
adjust: 1.0ms (8% of total)
ival-add: 1.0ms (8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

bsearch5.0ms (0.1%)

Memory
-36.3MiB live, 1.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
0.0ms
2.135620847714714e-65
2.7045751686141885e-65
Compiler

Compiled 129 to 107 computations (17.1% saved)

simplify54.0ms (0.7%)

Memory
6.5MiB live, 44.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
098550
1131550
2145550
3161550
4167550
5169550
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (if (<=.f64 re #s(literal 5740878879676573/9568131466127621947163770315237577352582483950433331955534014747297500715462012198465648064079848065788579276806882658480425438483841942548911565191978080929321047135323978360596199778018349602045952 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) (if (<=.f64 re #s(literal 3400000000000000096167813194775297130620327693604608518763630892304398746471923045605718741033226035347556196585869292351985836319834112 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -2299999999999999929448909259652837532287367407335313315924623979150217079231224637942639579530353165396598955886472225853342424252142839390132351194927882443364594741380678033842237266198528 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)))) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))
#s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))
Outputs
(if (<=.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))) #s(literal 0 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (*.f64 (sqrt.f64 (*.f64 (+.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(if (<=.f64 (sqrt.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 0 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 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 -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (if (<=.f64 re #s(literal 5740878879676573/9568131466127621947163770315237577352582483950433331955534014747297500715462012198465648064079848065788579276806882658480425438483841942548911565191978080929321047135323978360596199778018349602045952 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 #s(literal 2 binary64) im)))) (if (<=.f64 re #s(literal 3400000000000000096167813194775297130620327693604608518763630892304398746471923045605718741033226035347556196585869292351985836319834112 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 im im))) re)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re)))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 5740878879676573/9568131466127621947163770315237577352582483950433331955534014747297500715462012198465648064079848065788579276806882658480425438483841942548911565191978080929321047135323978360596199778018349602045952 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (*.f64 im #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 3400000000000000096167813194775297130620327693604608518763630892304398746471923045605718741033226035347556196585869292351985836319834112 binary64)) (*.f64 (sqrt.f64 (*.f64 (+.f64 (sqrt.f64 (fma.f64 re re (*.f64 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)))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im))))) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 binary64)) (*.f64 (sqrt.f64 #s(approx (* 2 (+ (sqrt (+ (* re re) (* im im))) re)) (/.f64 (neg.f64 im) (/.f64 re im)))) #s(literal 1/2 binary64)) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 (sqrt.f64 #s(approx (* (+ (sqrt (+ (* im im) (* re re))) re) 2) (fma.f64 (/.f64 im re) im (*.f64 #s(literal 4 binary64) re)))) #s(literal 1/2 binary64))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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)))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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)) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 binary64)) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re))))) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -34000000000000000598440100747701448196478630729885539106816 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 binary64)) (*.f64 (sqrt.f64 (*.f64 #s(approx (+ (sqrt (+ (* re re) (* im im))) re) (+.f64 im re)) #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(approx (* 1/2 (sqrt (* 2 (+ (sqrt (+ (* re re) (* im im))) re)))) (sqrt.f64 re))))
(if (<=.f64 re #s(literal -2299999999999999929448909259652837532287367407335313315924623979150217079231224637942639579530353165396598955886472225853342424252142839390132351194927882443364594741380678033842237266198528 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)))) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 -2299999999999999929448909259652837532287367407335313315924623979150217079231224637942639579530353165396598955886472225853342424252142839390132351194927882443364594741380678033842237266198528 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)) (if (<=.f64 re #s(literal 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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 2845706385096283/118571099379011784113736688648896417641748464297615937576404566024103044751294464 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))

soundness972.0ms (13.4%)

Memory
19.3MiB live, 581.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05002884
116592707
259102687
080802521
08044235
125363887
084053682
041313
071238
1200236
21041236
08653236
037255
059209
1171209
2773209
37722209
08390209
01265
02065
16165
239865
3422565
0834438
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1 014 to 413 computations (59.3% saved)

preprocess84.0ms (1.2%)

Memory
-3.5MiB live, 72.4MiB allocated
Remove

(abs im)

Compiler

Compiled 1 304 to 332 computations (74.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...