math.abs on complex

Time bar (total: 4.2s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 10 to 5 computations (50% saved)

sample1.0s (24.8%)

Memory
-8.8MiB live, 555.5MiB allocated
Samples
639.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 355.0ms
ival-hypot: 345.0ms (97.2% of total)
ival-true: 6.0ms (1.7% of total)
ival-assert: 3.0ms (0.8% of total)
Bogosity

explain156.0ms (3.8%)

Memory
2.8MiB live, 80.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1260-3(-1.1048589174966714e-159 2.3013812278567763e-243)(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-(*.f64 re re)
00-0-re
00-0-(*.f64 im im)
00-0-im
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1070
(+.f64 (*.f64 re re) (*.f64 im im))overflow107
(*.f64 re re)overflow61
(*.f64 im im)overflow59
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue160
(+.f64 (*.f64 re re) (*.f64 im im))underflow16
(*.f64 re re)underflow58
(*.f64 im im)underflow67
Confusion
Predicted +Predicted -
+1233
-0130
Precision
1.0
Recall
0.9761904761904762
Confusion?
Predicted +Predicted MaybePredicted -
+12303
-00130
Precision?
1.0
Recall?
0.9761904761904762
Freqs
test
numberfreq
0133
1123
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
75.0ms512×0valid
Compiler

Compiled 104 to 34 computations (67.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-hypot: 53.0ms (85.1% of total)
ival-mult: 7.0ms (11.2% of total)
ival-add: 2.0ms (3.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess16.0ms (0.4%)

Memory
11.0MiB live, 11.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01642
13542
27742
314542
420442
521742
621942
068
0108
1118
0113
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(hypot.f64 im re)
Symmetry

(abs im)

(abs re)

(sort re im)

Compiler

Compiled 8 to 6 computations (25% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.8%
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Compiler

Compiled 8 to 6 computations (25% saved)

simplify3.0ms (0.1%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff-5120
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
cost-diff0
(*.f64 im im)
cost-diff0
(*.f64 re re)
cost-diff128
(+.f64 (*.f64 re re) (*.f64 im im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0623
01023
11123
01117
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(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
(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

localize84.0ms (2%)

Memory
-38.1MiB live, 10.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 (*.f64 re re) (*.f64 im im))
accuracy0
(*.f64 re re)
accuracy0
(*.f64 im im)
accuracy28.93052073288381
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Samples
79.0ms256×0valid
Compiler

Compiled 48 to 14 computations (70.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-hypot: 5.0ms (51.7% of total)
ival-mult: 3.0ms (31% of total)
ival-add: 1.0ms (10.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.1%)

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

6 calls:

TimeVariablePointExpression
1.0ms
re
@0
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
re
@inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
im
@inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
re
@-inf
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))
1.0ms
im
@0
((+ (* re re) (* im im)) (* re re) (* im im) (sqrt (+ (* re re) (* im im))))

simplify206.0ms (5%)

Memory
35.1MiB live, 146.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0104429
1296429
2953427
33667393
46426391
08051354
Stop Event
iter limit
node limit
Counts
27 → 25
Calls
Call 1
Inputs
(pow im 2)
(+ (pow im 2) (pow re 2))
(pow re 2)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 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))))))))
(+ re (* 1/2 (/ (pow im 2) re)))
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(+ re (* (pow im 2) (+ (* (pow im 2) (- (* 1/16 (/ (pow im 2) (pow re 5))) (* 1/8 (/ 1 (pow re 3))))) (* 1/2 (/ 1 re)))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Outputs
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 im im (*.f64 re re))
(pow re 2)
(*.f64 re re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.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 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 im im (*.f64 re re))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im 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 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 im re)) im (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) re))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.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 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 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)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 im im (*.f64 re re))
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) 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 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 re im)) re (*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64))) im))

rewrite290.0ms (7%)

Memory
-22.4MiB live, 182.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0621
01021
12921
219621
3178821
0862415
Stop Event
iter limit
node limit
iter limit
Counts
4 → 245
Calls
Call 1
Inputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
(*.f64 im im)
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Outputs
(*.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (neg.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(*.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (neg.f64 (log.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 (/.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 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.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 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))) #s(literal -1 binary64)) (pow.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))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) #s(literal -1 binary64)) (pow.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) #s(literal -1 binary64)) (pow.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))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 im re) (fma.f64 im im (*.f64 re re))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.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)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (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 (pow.f64 (+.f64 im re) #s(literal -1 binary64)) (pow.f64 (/.f64 (-.f64 re im) (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) #s(literal -1 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)))) (fma.f64 im im (*.f64 re re)))
(*.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (+.f64 im re))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 (+.f64 im re) (-.f64 im 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 #s(literal 1 binary64) (fma.f64 im im (*.f64 re re)))
(*.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 (-.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 (fma.f64 im im (*.f64 re re)) (+.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 (fma.f64 im im (*.f64 re re)) (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 (fma.f64 im im (*.f64 re re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))))
(*.f64 (fma.f64 im im (*.f64 re re)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.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 (neg.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 (*.f64 (neg.f64 (/.f64 (pow.f64 im #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 (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 (neg.f64 (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (neg.f64 (-.f64 re im)))
(/.f64 (neg.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)))) (neg.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (neg.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)))) (neg.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 (neg.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)))) (neg.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (neg.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)))) (neg.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 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 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 (neg.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)))) (neg.f64 (+.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 (/.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)))) (neg.f64 (+.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 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (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 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (neg.f64 (*.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 (neg.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (neg.f64 (*.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 (neg.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))) (neg.f64 (*.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 (neg.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))))) (neg.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (*.f64 (*.f64 (+.f64 im re) (-.f64 im re)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (-.f64 re im)) (*.f64 (-.f64 re im) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (-.f64 re im) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (-.f64 re im) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (-.f64 re im) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) #s(literal 1 binary64))) (*.f64 (-.f64 re im) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 re im) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (-.f64 re im)) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1 binary64))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 re im)) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 re im) (+.f64 im re))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (-.f64 re im)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (/.f64 (pow.f64 im #s(literal 4 binary64)) (+.f64 im re)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (-.f64 re im)))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (neg.f64 (pow.f64 im #s(literal 4 binary64))))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (-.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 1 binary64))) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (-.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))
(/.f64 (exp.f64 (log.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (exp.f64 (log.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (exp.f64 (log.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (exp.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (exp.f64 (log.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 (exp.f64 (log.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (exp.f64 (log.f64 (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (exp.f64 (log.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 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 (+.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 (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 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (neg.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (neg.f64 (*.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 (neg.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (neg.f64 (*.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 (neg.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))) (neg.f64 (*.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 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 im re) (-.f64 im 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 (*.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 (fma.f64 im im (*.f64 re re)) #s(literal -1 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 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 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (+.f64 im re) (-.f64 im re)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 re im) (/.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.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 #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 (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 #s(literal 1 binary64) (/.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.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 #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 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 #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 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.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 (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 #s(literal 1 binary64) (/.f64 (+.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 (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 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (*.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 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.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 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 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 (-.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))) (+.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)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (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)))) (fma.f64 im im (*.f64 re re)) (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 (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))
(-.f64 (/.f64 (pow.f64 (/.f64 (pow.f64 re #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 (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)) (+.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 (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 (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 re im) (+.f64 im re))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))) (/.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 re #s(literal 8 binary64)) (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (/.f64 (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 re #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 (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)) (*.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 (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 #s(literal 0 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 (+.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 (/.f64 (/.f64 (pow.f64 re #s(literal 8 binary64)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (*.f64 (-.f64 re im) (+.f64 im re))) (/.f64 (/.f64 (pow.f64 im #s(literal 8 binary64)) (+.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)) (+.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 (pow.f64 im #s(literal 12 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 re im) (+.f64 im re))))
(-.f64 (/.f64 (/.f64 (pow.f64 re #s(literal 12 binary64)) (-.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 (pow.f64 im #s(literal 12 binary64)) (-.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 #s(literal 0 binary64) (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re)))) (/.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 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im 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))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (fma.f64 im im (*.f64 re re))))
(+.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 re re)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 re))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 re #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(*.f64 im im)
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(*.f64 (sqrt.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))))) (sqrt.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (sqrt.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))))) (sqrt.f64 (-.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 (sqrt.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))))) (sqrt.f64 (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 (sqrt.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))))) (hypot.f64 im re))
(*.f64 (sqrt.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re))) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 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/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.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)))) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64)))))
(*.f64 (pow.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)))) #s(literal 1/2 binary64)) (sqrt.f64 (-.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 (pow.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)))) #s(literal 1/2 binary64)) (sqrt.f64 (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 (pow.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)))) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 im re)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 im re))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (pow.f64 (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (sqrt.f64 (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 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))))) (pow.f64 (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)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1/2 binary64)) (sqrt.f64 (-.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/2 binary64)) (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (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 (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 (fma.f64 im im (*.f64 re re)) (+.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 (-.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 (fma.f64 im im (*.f64 re re)) (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 (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)))) (pow.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.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)))
(*.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)))) (pow.f64 (*.f64 (fma.f64 im im (*.f64 re re)) (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)))
(*.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)))
(*.f64 (hypot.f64 im re) (sqrt.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re)))))
(*.f64 (hypot.f64 im re) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64)))))
(*.f64 (hypot.f64 im re) (pow.f64 (/.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (*.f64 (-.f64 re im) (+.f64 im re))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 im re) (pow.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (fma.f64 im im (*.f64 re re))))
(pow.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (neg.f64 (hypot.f64 (pow.f64 im #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (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 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (neg.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (neg.f64 (sqrt.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (neg.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (neg.f64 (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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (+.f64 im re))) (sqrt.f64 (-.f64 re im)))
(/.f64 (sqrt.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)))) (hypot.f64 (*.f64 im im) (*.f64 re re)))
(/.f64 (sqrt.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)))) (sqrt.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 (sqrt.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)))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64)))))
(/.f64 (sqrt.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)))) (sqrt.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 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64))) (sqrt.f64 (+.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 (*.f64 im re) #s(literal 2 binary64))) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 (sqrt.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)))) (sqrt.f64 (+.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 (sqrt.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)))) (sqrt.f64 (+.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 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (*.f64 (+.f64 im re) (-.f64 im re)))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))))) (sqrt.f64 (neg.f64 (neg.f64 (*.f64 (-.f64 re im) (+.f64 im re))))))
(/.f64 (sqrt.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64)))))) (sqrt.f64 (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 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (-.f64 re im) (+.f64 im re)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.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 (sqrt.f64 (*.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.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 (sqrt.f64 (*.f64 (+.f64 (pow.f64 im #s(literal 18 binary64)) (pow.f64 re #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.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 (sqrt.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))))) (sqrt.f64 (pow.f64 (*.f64 (-.f64 re im) (+.f64 im re)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 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 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64)))) (sqrt.f64 (*.f64 (*.f64 (-.f64 re im) (+.f64 im re)) (+.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.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 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64)))) (sqrt.f64 (*.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 (hypot.f64 (pow.f64 im #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (sqrt.f64 (*.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 (sqrt.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 im re))))
(/.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 (/.f64 #s(literal 1 binary64) (hypot.f64 im re)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (hypot.f64 im re)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (sqrt.f64 (*.f64 (-.f64 re im) (+.f64 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)))))
(sqrt.f64 (fma.f64 im im (*.f64 re re)))
(hypot.f64 im re)
(hypot.f64 re im)
(exp.f64 (fma.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64) (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))

eval37.0ms (0.9%)

Memory
7.5MiB live, 44.3MiB allocated
Compiler

Compiled 7 430 to 986 computations (86.7% saved)

prune9.0ms (0.2%)

Memory
-20.0MiB live, 18.0MiB allocated
Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2606266
Fresh000
Picked101
Done000
Total2616267
Accuracy
100.0%
Counts
267 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
54.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
54.0%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
94.7%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
6.6%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 134 to 92 computations (31.3% saved)

simplify52.0ms (1.3%)

Memory
27.3MiB live, 64.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 13 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01982
02982
14182
25382
35982
46482
57182
68682
713582
820382
938782
1072782
11146582
12161082
13166982
14168782
15169982
16177182
17220882
0220882
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(hypot.f64 re im)
re
im
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(fma.f64 re re (*.f64 im im))
re
(*.f64 im im)
im
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(/.f64 im re)
re
Outputs
(hypot.f64 re im)
(hypot.f64 im re)
re
im
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
(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
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 im re) (*.f64 im #s(literal 1/2 binary64)) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 (/.f64 im re) (*.f64 im #s(literal 1/2 binary64)) re)
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
im
(/.f64 im re)
re

localize49.0ms (1.2%)

Memory
-10.9MiB live, 102.7MiB allocated
Localize:

Found 13 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 im re)
accuracy0
(*.f64 #s(literal 1/2 binary64) im)
accuracy0.12109375
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
accuracy59.77898261656338
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
accuracy0
(fma.f64 re re (*.f64 im im))
accuracy0
(*.f64 im im)
accuracy28.93052073288381
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
accuracy0
(*.f64 im im)
accuracy0.5420567869323885
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
accuracy28.93052073288381
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
accuracy0
(neg.f64 re)
accuracy62.837318259056936
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
accuracy0
(hypot.f64 re im)
Samples
33.0ms256×0valid
Compiler

Compiled 186 to 33 computations (82.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-mult: 9.0ms (46.3% of total)
ival-hypot: 5.0ms (25.7% of total)
ival-div: 2.0ms (10.3% of total)
ival-add: 2.0ms (10.3% of total)
ival-neg: 1.0ms (5.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series9.0ms (0.2%)

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

6 calls:

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

simplify167.0ms (4%)

Memory
-14.3MiB live, 195.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0117479
1326479
21025477
33967435
47531435
08293397
Stop Event
iter limit
node limit
Counts
33 → 31
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* -1 re)
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 1/2 (/ (pow im 2) re))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/ im re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(pow re 2)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(+ 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 im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) re) re (/.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 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* -1 re)
(neg.f64 re)
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 im im (*.f64 re re))
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(/ im re)
(/.f64 im re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.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 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(fma.f64 im im (*.f64 re re))
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(neg.f64 (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) re) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) im) im (/.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 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 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 im)
(*.f64 #s(literal 1/2 binary64) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) 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 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(fma.f64 im im (*.f64 re re))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(fma.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64) re)
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(neg.f64 (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(neg.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(neg.f64 (fma.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))))

rewrite162.0ms (3.9%)

Memory
11.4MiB live, 172.0MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01970
02970
17770
246270
3560070
0818570
Stop Event
iter limit
node limit
iter limit
Counts
12 → 327
Calls
Call 1
Inputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(neg.f64 re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
(fma.f64 re re (*.f64 im im))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(*.f64 #s(literal 1/2 binary64) im)
(/.f64 im re)
Outputs
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (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))) (pow.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)))) #s(literal -1 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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) #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 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(/.f64 (neg.f64 (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 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.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 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))))
(sqrt.f64 (fma.f64 im im (*.f64 re 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 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 (fma.f64 im im (*.f64 re re))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(*.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -2 binary64)))
(*.f64 #s(literal -1 binary64) re)
(*.f64 re #s(literal -1 binary64))
(pow.f64 (/.f64 re (*.f64 (neg.f64 re) re)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 re re) (neg.f64 (pow.f64 re #s(literal 3 binary64)))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 re) re)) (neg.f64 re))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 2 binary64))) re)
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (neg.f64 re) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) (neg.f64 re)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64)))) (*.f64 (neg.f64 re) re))
(/.f64 (*.f64 (neg.f64 re) re) re)
(/.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) (*.f64 re re))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 (neg.f64 re) re)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 re re) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(neg.f64 re)
(fma.f64 (*.f64 (neg.f64 re) re) (pow.f64 re #s(literal -1 binary64)) #s(literal 0 binary64))
(fma.f64 (neg.f64 (pow.f64 re #s(literal 3 binary64))) (pow.f64 re #s(literal -2 binary64)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) re #s(literal 0 binary64))
(fma.f64 re #s(literal -1 binary64) #s(literal 0 binary64))
(-.f64 (/.f64 #s(literal 0 binary64) re) (/.f64 (*.f64 re re) re))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 re re)) (/.f64 (pow.f64 re #s(literal 3 binary64)) (*.f64 re re)))
(-.f64 #s(literal 0 binary64) re)
(+.f64 #s(literal 0 binary64) (neg.f64 re))
(+.f64 (neg.f64 re) #s(literal 0 binary64))
(*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im))) #s(literal 1/2 binary64)))
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 im im)
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 im #s(literal 2 binary64))
(exp.f64 (*.f64 (*.f64 (log.f64 im) #s(literal 1 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 im))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 im) #s(literal 2 binary64)))
(*.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)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (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)))) (fma.f64 im im (*.f64 re re)))
(*.f64 (/.f64 (fma.f64 im im (*.f64 re re)) (+.f64 im re)) (+.f64 im re))
(*.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (*.f64 (+.f64 im re) (-.f64 im re)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 im im (*.f64 re re)))
(*.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 (fma.f64 im im (*.f64 re re)) (+.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 (fma.f64 im im (*.f64 re re)) (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 (fma.f64 im im (*.f64 re re)) (/.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) (fma.f64 (neg.f64 im) im (*.f64 re re))))
(*.f64 (fma.f64 im im (*.f64 re re)) (*.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64))))
(pow.f64 (/.f64 (*.f64 (+.f64 im re) (-.f64 im 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 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re 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 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 2 binary64))) (+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))) (neg.f64 (*.f64 (+.f64 im re) (-.f64 im 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 (fma.f64 (neg.f64 im) im (*.f64 re 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))) (fma.f64 (neg.f64 im) im (*.f64 re 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))) (fma.f64 (neg.f64 im) im (*.f64 re 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 (*.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (*.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 re #s(literal 8 binary64)) (pow.f64 im #s(literal 8 binary64))) (*.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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))) (*.f64 (+.f64 im re) (-.f64 im re)))
(/.f64 (-.f64 (pow.f64 re #s(literal 12 binary64)) (pow.f64 im #s(literal 12 binary64))) (*.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (neg.f64 im) im (*.f64 re re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 im re) (-.f64 im re)) (-.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 im im (*.f64 re re)) #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)))) (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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)))) (fma.f64 (*.f64 im im) (fma.f64 im im (*.f64 re re)) (pow.f64 re #s(literal 4 binary64))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re 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)))) (fma.f64 im im (*.f64 re re)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re 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)) (fma.f64 (neg.f64 im) im (*.f64 re 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)) (fma.f64 (neg.f64 im) im (*.f64 re 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)) (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(fma.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)) #s(literal -1 binary64)) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (fma.f64 (neg.f64 im) im (*.f64 re re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(fma.f64 im im (*.f64 re re))
(fma.f64 re (/.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(fma.f64 re re (*.f64 im im))
(-.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))) (/.f64 (pow.f64 re #s(literal 4 binary64)) (*.f64 (+.f64 im re) (-.f64 im re))))
(-.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))))
(exp.f64 (*.f64 (neg.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re))) (neg.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(+.f64 (*.f64 im im) (*.f64 re re))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 (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))) (pow.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)))) #s(literal -1 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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) #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 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 im im (*.f64 re re)))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (fma.f64 (neg.f64 im) im (*.f64 re re)))))
(/.f64 (neg.f64 (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 (*.f64 (+.f64 im re) (-.f64 im re))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re 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 (fma.f64 (neg.f64 im) im (*.f64 re re))) (sqrt.f64 (-.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (+.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 (fma.f64 im im (*.f64 re re)) #s(literal -1 binary64))))
(sqrt.f64 (fma.f64 im im (*.f64 re 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 (*.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 (fma.f64 im im (*.f64 re re))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 im im (*.f64 re re)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 im im (*.f64 re re))) #s(literal 1/2 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) (-.f64 (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64)) (pow.f64 (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re) #s(literal 2 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64)) (pow.f64 (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re) #s(literal 3 binary64)))) (fma.f64 (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re) (-.f64 (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re) (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64))))
(*.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)))) (pow.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)))
(*.f64 (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (pow.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re) #s(literal -1 binary64)))
(*.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (pow.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(*.f64 #s(literal 1 binary64) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) (/.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))))
(*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) #s(literal -1 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (/.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(pow.f64 (/.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64)) (pow.f64 re #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))) (+.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) #s(literal -1 binary64))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64)))))
(/.f64 (*.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) #s(literal -1 binary64))) (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64))))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) #s(literal 1 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)) #s(literal 2 binary64))) (fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))))
(/.f64 (neg.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64))))) (neg.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (+.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64))) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))))
(/.f64 (*.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64))))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (*.f64 re re))) (pow.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) #s(literal 2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re re))))
(/.f64 (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)))) (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))))
(/.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (+.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 2 binary64)) (pow.f64 re #s(literal 4 binary64))) (pow.f64 (/.f64 re (*.f64 (*.f64 #s(literal 1/2 binary64) im) im)) #s(literal -4 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64))) (pow.f64 re #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64))))))
(/.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 9 binary64)) (pow.f64 re #s(literal 9 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)) (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 6 binary64)) (-.f64 (pow.f64 re #s(literal 6 binary64)) (*.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) re) #s(literal 3 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) (fma.f64 re re (*.f64 #s(literal -1/4 binary64) (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re))))
(neg.f64 (/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re)) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(neg.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (pow.f64 re #s(literal 3 binary64))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im))) re)))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (*.f64 (neg.f64 re) re)) re re)
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (neg.f64 (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re) re)
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64)) (/.f64 im re) re)
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) (neg.f64 re)) (neg.f64 im) re)
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 im #s(literal 6 binary64))) (pow.f64 re #s(literal -3 binary64)) (neg.f64 (pow.f64 re #s(literal 3 binary64))))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 re (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (neg.f64 re) re))) (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (pow.f64 re #s(literal 1/2 binary64)) (pow.f64 re #s(literal 1/2 binary64)) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) (/.f64 (neg.f64 im) re) re)
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 im (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) #s(literal 1 binary64)) (pow.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im re)
(fma.f64 (*.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) im) (/.f64 (/.f64 im re) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) (/.f64 (*.f64 (/.f64 im re) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (/.f64 (neg.f64 im) re) (/.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal -1 binary64)) re)
(fma.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 im im)) (/.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 im im)) (/.f64 #s(literal -1 binary64) re) re)
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) (pow.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(fma.f64 #s(literal -1 binary64) (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) im) im) re)
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) re)
(fma.f64 #s(literal 1 binary64) re (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (neg.f64 im) (/.f64 (*.f64 #s(literal 1/2 binary64) im) (neg.f64 re)) re)
(fma.f64 (neg.f64 im) (*.f64 (/.f64 #s(literal -1 binary64) re) (*.f64 #s(literal 1/2 binary64) im)) re)
(fma.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) (/.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (/.f64 im re) (/.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/4 binary64)) im) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (/.f64 im re) (/.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal -1 binary64))) re)
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 (pow.f64 (/.f64 re im) #s(literal -2 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 im re) im) re)
(fma.f64 (*.f64 im im) (*.f64 (pow.f64 re #s(literal -1 binary64)) #s(literal 1/2 binary64)) re)
(fma.f64 (neg.f64 re) #s(literal -1 binary64) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(fma.f64 im (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) re)
(fma.f64 re #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(-.f64 (/.f64 (*.f64 re re) (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))) (/.f64 (*.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 re (*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im)))))
(-.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) #s(literal -1 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)))) (neg.f64 (/.f64 (*.f64 (neg.f64 re) re) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(+.f64 (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im) re)
(+.f64 re (*.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) im)
(*.f64 im #s(literal 1/2 binary64))
(*.f64 (/.f64 (neg.f64 im) (*.f64 (neg.f64 re) re)) re)
(*.f64 (/.f64 (neg.f64 im) (neg.f64 (pow.f64 re #s(literal 3 binary64)))) (*.f64 re re))
(*.f64 (pow.f64 (/.f64 re im) #s(literal -1/2 binary64)) (pow.f64 (/.f64 re im) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 #s(literal -1 binary64) re) (/.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) re) (neg.f64 im))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 im) re))
(*.f64 (pow.f64 re #s(literal -1 binary64)) im)
(*.f64 #s(literal 1 binary64) (/.f64 im re))
(*.f64 (neg.f64 im) (/.f64 #s(literal -1 binary64) re))
(*.f64 (/.f64 im re) #s(literal 1 binary64))
(*.f64 im (pow.f64 re #s(literal -1 binary64)))
(pow.f64 (pow.f64 (/.f64 re im) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (/.f64 re im) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (/.f64 re im) #s(literal -1 binary64))
(pow.f64 (/.f64 im re) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 (neg.f64 im) #s(literal 1 binary64)) (neg.f64 re))
(/.f64 (/.f64 (neg.f64 im) re) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 re) im))
(/.f64 (pow.f64 re #s(literal -1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 re im))
(/.f64 (neg.f64 im) (neg.f64 re))
(/.f64 im re)
(neg.f64 (/.f64 #s(literal -1 binary64) (/.f64 re im)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.f64 im) re)))
(neg.f64 (/.f64 (neg.f64 im) re))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 re)) (/.f64 (neg.f64 im) re))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 re im)) #s(literal -1 binary64)))

eval53.0ms (1.3%)

Memory
-29.8MiB live, 91.3MiB allocated
Compiler

Compiled 8 141 to 1 067 computations (86.9% saved)

prune7.0ms (0.2%)

Memory
23.0MiB live, 23.0MiB allocated
Pruning

8 alts after pruning (3 fresh and 5 done)

PrunedKeptTotal
New3222324
Fresh011
Picked055
Done000
Total3228330
Accuracy
100.0%
Counts
330 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
54.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
54.0%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
94.7%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
6.6%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
3.2%
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 117 to 75 computations (35.9% saved)

simplify138.0ms (3.3%)

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

Found 11 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
027206
046185
180185
2153183
3482179
42126145
57878145
08210133
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(/.f64 im re)
im
re
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
(*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))
(*.f64 (/.f64 im re) #s(literal 1/2 binary64))
(neg.f64 re)
(/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))
#s(literal -1 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)
#s(literal -1/2 binary64)
(*.f64 (/.f64 im re) im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 re re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
re
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(/.f64 im re)
im
re
(*.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
(*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
#s(literal 1 binary64)
(fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))
(*.f64 (/.f64 im re) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (/.f64 im re))
(neg.f64 re)
(/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))
(/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
#s(literal -1 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)
#s(literal -1/2 binary64)
(*.f64 (/.f64 im re) im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
(*.f64 re re)
re
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 re re)
re

localize92.0ms (2.2%)

Memory
3.1MiB live, 125.3MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 re re)
accuracy28.93052073288381
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
accuracy54.09025409351317
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
accuracy0
(/.f64 #s(literal 1/2 binary64) im)
accuracy0
(*.f64 re re)
accuracy0.31051115159539644
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
accuracy3.1784480578608414
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
accuracy0.125
(*.f64 (/.f64 im re) im)
accuracy0.45909306049984355
(/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))
accuracy32.54723263660728
(*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
accuracy59.77898261656338
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
Samples
75.0ms256×0valid
Compiler

Compiled 377 to 55 computations (85.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-mult: 39.0ms (62.7% of total)
ival-hypot: 11.0ms (17.7% of total)
ival-div: 5.0ms (8% of total)
ival-add: 5.0ms (8% of total)
ival-neg: 1.0ms (1.6% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series28.0ms (0.7%)

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

6 calls:

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

simplify225.0ms (5.4%)

Memory
27.3MiB live, 260.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02711262
18121169
226891091
084851006
Stop Event
iter limit
node limit
Counts
61 → 59
Calls
Call 1
Inputs
1
(* 1/2 (/ (pow im 2) re))
(/ (+ (* -1 (* (pow re 2) (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1))) (* 1/2 (pow im 2))) re)
(/ (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1 (* (pow re 2) (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2)))))) (* -1 (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1))))) re)
(/ (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1 (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1)) (* (pow re 2) (+ (* -2 (/ (* (pow re 2) (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2))))) (pow im 2))) (* -1 (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2)))))))))) re)
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)))))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(pow re 2)
(pow im 2)
(+ (pow im 2) (pow re 2))
(* 2 (/ re (pow im 2)))
(* re (+ (* 4 (/ (pow re 2) (pow im 4))) (* 2 (/ 1 (pow im 2)))))
(* re (+ (* (pow re 2) (+ (* 8 (/ (pow re 2) (pow im 6))) (* 4 (/ 1 (pow im 4))))) (* 2 (/ 1 (pow im 2)))))
(* re (+ (* (pow re 2) (+ (* (pow re 2) (+ (* 16 (/ (pow re 2) (pow im 8))) (* 8 (/ 1 (pow im 6))))) (* 4 (/ 1 (pow im 4))))) (* 2 (/ 1 (pow im 2)))))
(/ (pow im 2) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(/ -1 re)
(/ (- (* -1/2 (/ (pow im 2) (pow re 2))) 1) re)
(/ (- (* -1/4 (/ (pow im 4) (pow re 4))) (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) re)
(/ (- (* -1/8 (/ (pow im 6) (pow re 6))) (+ 1 (+ (* 1/4 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) 1)))
(* -1 (* re (- (+ (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) (* -1 (/ (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2)))))) (pow re 4)))) 1)))
(* -1 (* re (- (+ (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) (+ (* -1 (/ (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2)))))) (pow re 4))) (* -1/2 (/ (* (pow im 2) (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))))))) (pow re 6))))) 1)))
(* -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 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(* -1 (/ (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1 (* 1/4 (/ (pow im 4) (pow re 4)))) (* -1/2 (/ (pow im 2) (pow re 2)))) re))
(* -1 (/ (- (+ 1 (* 1/8 (/ (pow im 6) (pow re 6)))) (+ (* -1/2 (/ (pow im 2) (pow re 2))) (* -1/4 (/ (pow im 4) (pow re 4))))) 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 re 2)) (pow im 2)) im)
(/ 1/2 im)
(- (* -1/2 (/ (pow im 2) (pow re 3))) (/ 1 re))
(- (* (pow im 2) (- (* -1/4 (/ (pow im 2) (pow re 5))) (* 1/2 (/ 1 (pow re 3))))) (/ 1 re))
(- (* (pow im 2) (- (* (pow im 2) (- (* -1/8 (/ (pow im 2) (pow re 7))) (* 1/4 (/ 1 (pow re 5))))) (* 1/2 (/ 1 (pow re 3))))) (/ 1 re))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (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)))))))
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(/ (+ (* 2 re) (* 4 (/ (pow re 3) (pow im 2)))) (pow im 2))
(/ (- (+ (* 2 re) (* 8 (/ (pow re 5) (pow im 4)))) (* -4 (/ (pow re 3) (pow im 2)))) (pow im 2))
(/ (- (+ (* 2 re) (* 16 (/ (pow re 7) (pow im 6)))) (+ (* -8 (/ (pow re 5) (pow im 4))) (* -4 (/ (pow re 3) (pow im 2))))) (pow im 2))
(* -1 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
Outputs
1
#s(literal 1 binary64)
(* 1/2 (/ (pow im 2) re))
(*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64))
(/ (+ (* -1 (* (pow re 2) (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1))) (* 1/2 (pow im 2))) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(/ (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1 (* (pow re 2) (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2)))))) (* -1 (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1))))) re)
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (fma.f64 (neg.f64 (pow.f64 re #s(literal 4 binary64))) (-.f64 (/.f64 (/.f64 #s(literal -2 binary64) im) im) (/.f64 (/.f64 #s(literal -2 binary64) im) im)) (*.f64 re re))) re)
(/ (+ (* 1/2 (pow im 2)) (* (pow re 2) (+ (* -1 (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1)) (* (pow re 2) (+ (* -2 (/ (* (pow re 2) (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2))))) (pow im 2))) (* -1 (- (* 2 (/ 1 (pow im 2))) (* -2 (/ (- (* -2 (/ (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2))) (pow im 2))) 1) (pow im 2)))))))))) re)
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) im (fma.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 #s(literal -2 binary64) (*.f64 re re)) (-.f64 (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 4 binary64))) (/.f64 #s(literal 2 binary64) (pow.f64 im #s(literal 4 binary64)))) (-.f64 (/.f64 (/.f64 #s(literal -2 binary64) im) im) (/.f64 (/.f64 #s(literal -2 binary64) im) im))) (*.f64 re re))) re)
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) 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 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(/ (+ (* 1/2 (pow im 2)) (pow re 2)) re)
(/.f64 (fma.f64 (*.f64 im im) #s(literal 1/2 binary64) (*.f64 re re)) re)
(pow re 2)
(*.f64 re re)
(pow im 2)
(*.f64 im im)
(+ (pow im 2) (pow re 2))
(fma.f64 re re (*.f64 im im))
(* 2 (/ re (pow im 2)))
(*.f64 (/.f64 re (*.f64 im im)) #s(literal 2 binary64))
(* re (+ (* 4 (/ (pow re 2) (pow im 4))) (* 2 (/ 1 (pow im 2)))))
(fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 4 binary64) (*.f64 (/.f64 re (*.f64 im im)) #s(literal 2 binary64)))
(* re (+ (* (pow re 2) (+ (* 8 (/ (pow re 2) (pow im 6))) (* 4 (/ 1 (pow im 4))))) (* 2 (/ 1 (pow im 2)))))
(fma.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 re im) (*.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 8 binary64) re) (/.f64 re (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal 4 binary64) (pow.f64 im #s(literal 4 binary64))))))
(* re (+ (* (pow re 2) (+ (* (pow re 2) (+ (* 16 (/ (pow re 2) (pow im 8))) (* 8 (/ 1 (pow im 6))))) (* 4 (/ 1 (pow im 4))))) (* 2 (/ 1 (pow im 2)))))
(fma.f64 (/.f64 #s(literal 2 binary64) im) (/.f64 re im) (*.f64 (pow.f64 re #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 #s(literal 16 binary64) re) (/.f64 re (pow.f64 im #s(literal 8 binary64))) (/.f64 #s(literal 8 binary64) (pow.f64 im #s(literal 6 binary64)))) (*.f64 re re) (/.f64 #s(literal 4 binary64) (pow.f64 im #s(literal 4 binary64))))))
(/ (pow im 2) re)
(/.f64 (*.f64 im im) re)
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))) re)
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(*.f64 (*.f64 (+.f64 (/.f64 im (*.f64 re re)) (/.f64 #s(literal 1/2 binary64) im)) re) re)
(* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))
(*.f64 (*.f64 (fma.f64 im (/.f64 im (*.f64 re re)) #s(literal 1 binary64)) re) re)
(/ -1 re)
(/.f64 #s(literal -1 binary64) re)
(/ (- (* -1/2 (/ (pow im 2) (pow re 2))) 1) re)
(/.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) re)
(/ (- (* -1/4 (/ (pow im 4) (pow re 4))) (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))) re)
(/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64))) re)
(/ (- (* -1/8 (/ (pow im 6) (pow re 6))) (+ 1 (+ (* 1/4 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))) re)
(/.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/8 binary64) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)))) re)
(* -1 (* re (- (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* -1 (* re (- (+ (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) (* -1 (/ (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2)))))) (pow re 4)))) 1)))
(*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im (*.f64 re re)) (/.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 4 binary64)))) #s(literal 1 binary64)) re)
(* -1 (* re (- (+ (* -1 (/ (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))) (pow re 2))) (+ (* -1 (/ (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2)))))) (pow re 4))) (* -1/2 (/ (* (pow im 2) (- (* -1/4 (pow im 4)) (* -1/2 (* (pow im 2) (- (* -1 (+ (* -1/2 (pow im 2)) (* 1/2 (pow im 2)))) (* -1/2 (pow im 2))))))) (pow re 6))))) 1)))
(fma.f64 (neg.f64 re) (fma.f64 (*.f64 im im) (fma.f64 (/.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64)))) (pow.f64 re #s(literal 6 binary64))) #s(literal -1/2 binary64) (/.f64 (/.f64 #s(literal -1/2 binary64) re) re)) (/.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 im #s(literal 4 binary64)) (*.f64 #s(literal -1/4 binary64) (pow.f64 im #s(literal 4 binary64))))) (pow.f64 re #s(literal 4 binary64)))) re)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) re)
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(*.f64 (neg.f64 re) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(*.f64 (neg.f64 re) (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))))
(* -1 (* re (- (* -1/2 (/ (pow im 2) (pow re 2))) 1)))
(*.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)) re)
(* -1 (/ (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) re)
(* -1 (/ (- (+ 1 (* 1/4 (/ (pow im 4) (pow re 4)))) (* -1/2 (/ (pow im 2) (pow re 2)))) re))
(/.f64 (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64))) re)
(* -1 (/ (- (+ 1 (* 1/8 (/ (pow im 6) (pow re 6)))) (+ (* -1/2 (/ (pow im 2) (pow re 2))) (* -1/4 (/ (pow im 4) (pow re 4))))) re))
(/.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 #s(literal 1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal 1/2 binary64) #s(literal 1 binary64)))) (neg.f64 re))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) re) (*.f64 im im) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 im (pow.f64 re #s(literal 3 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 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 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 re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(- (* -1/2 (/ (pow im 2) (pow re 3))) (/ 1 re))
(/.f64 (fma.f64 (/.f64 (/.f64 (*.f64 im im) re) re) #s(literal -1/2 binary64) #s(literal -1 binary64)) re)
(- (* (pow im 2) (- (* -1/4 (/ (pow im 2) (pow re 5))) (* 1/2 (/ 1 (pow re 3))))) (/ 1 re))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(- (* (pow im 2) (- (* (pow im 2) (- (* -1/8 (/ (pow im 2) (pow re 7))) (* 1/4 (/ 1 (pow re 5))))) (* 1/2 (/ 1 (pow re 3))))) (/ 1 re))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 im (pow.f64 re #s(literal 7 binary64))) (/.f64 #s(literal -1/4 binary64) (pow.f64 re #s(literal 5 binary64)))) (*.f64 im im) (/.f64 #s(literal -1/2 binary64) (pow.f64 re #s(literal 3 binary64)))) (*.f64 im im) (/.f64 #s(literal -1 binary64) re))
(* (pow im 2) (+ (* 1/2 (/ 1 re)) (/ re (pow im 2))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) re) (/.f64 re (*.f64 im im))) im) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(*.f64 (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64)) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64))) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64)))) im)
(* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))
(*.f64 (*.f64 (fma.f64 re (/.f64 re (*.f64 im im)) #s(literal 1 binary64)) im) im)
(/ (+ (* 2 re) (* 4 (/ (pow re 3) (pow im 2)))) (pow im 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) (/.f64 #s(literal 4 binary64) im) (*.f64 #s(literal 2 binary64) re)) (*.f64 im im))
(/ (- (+ (* 2 re) (* 8 (/ (pow re 5) (pow im 4)))) (* -4 (/ (pow re 3) (pow im 2)))) (pow im 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) (/.f64 #s(literal 4 binary64) im) (fma.f64 (/.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 8 binary64) (*.f64 #s(literal 2 binary64) re))) (*.f64 im im))
(/ (- (+ (* 2 re) (* 16 (/ (pow re 7) (pow im 6)))) (+ (* -8 (/ (pow re 5) (pow im 4))) (* -4 (/ (pow re 3) (pow im 2))))) (pow im 2))
(/.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 3 binary64)) im) (/.f64 #s(literal 4 binary64) im) (fma.f64 (pow.f64 re #s(literal 7 binary64)) (/.f64 #s(literal 16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 5 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 8 binary64) (*.f64 #s(literal 2 binary64) re)))) (*.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 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(*.f64 (neg.f64 im) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64))))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(*.f64 (neg.f64 im) (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal 1/2 binary64) #s(literal 1 binary64)))))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(*.f64 (fma.f64 (*.f64 re (/.f64 re (*.f64 im im))) #s(literal -1/2 binary64) #s(literal -1 binary64)) (neg.f64 im))

rewrite64.0ms (1.5%)

Memory
14.8MiB live, 53.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027164
046164
1167151
01235139
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
12 → 187
Calls
Call 1
Inputs
(*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))
(*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(/.f64 #s(literal 1/2 binary64) im)
(*.f64 re re)
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re))
(*.f64 (/.f64 im re) im)
Outputs
(*.f64 (/.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (neg.f64 re)))
(*.f64 (/.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)) #s(literal 2 binary64))))
(*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (neg.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)))
(/.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (*.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (*.f64 (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (*.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)))
(/.f64 (*.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (*.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(/.f64 (*.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))))
(/.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(fma.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(fma.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (neg.f64 re)))
(fma.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (neg.f64 re) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))))
(fma.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(+.f64 (*.f64 (neg.f64 re) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(+.f64 (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (neg.f64 re)))
(+.f64 (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (neg.f64 re)) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re) (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(/.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))
(/.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) #s(literal -1 binary64)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))) (*.f64 (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 (*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))))
(/.f64 (*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(fma.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 re (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))))
(fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) re))
(fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) re (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))))
(fma.f64 re (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))))
(+.f64 (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))) (*.f64 re (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))))
(+.f64 (*.f64 re (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))) (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))))
(+.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) re))
(+.f64 (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) re) (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
(*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 #s(literal -1 binary64) (pow.f64 re #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (fma.f64 (neg.f64 re) (-.f64 (neg.f64 re) (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))))
(*.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 re re) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (neg.f64 re) #s(literal 3 binary64))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))) (neg.f64 (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re re (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) re))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 re #s(literal 3 binary64)))))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal 1 binary64) re))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1 binary64)) (neg.f64 (neg.f64 re)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 1/2 binary64)) (pow.f64 re #s(literal -1 binary64)) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) (*.f64 #s(literal 1 binary64) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) (neg.f64 (neg.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) re))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) (neg.f64 (neg.f64 re)))
(fma.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64) re)
(fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (*.f64 #s(literal 1 binary64) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 (neg.f64 re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im re)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 im re) im) (*.f64 #s(literal 1 binary64) re))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 im re) im) (neg.f64 (neg.f64 re)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 im re) im) re)
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) (*.f64 #s(literal 1 binary64) re))
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) (neg.f64 (neg.f64 re)))
(fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re)
(fma.f64 im (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (*.f64 #s(literal 1 binary64) re))
(fma.f64 im (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) (neg.f64 (neg.f64 re)))
(fma.f64 im (*.f64 (pow.f64 re #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) im)) re)
(fma.f64 im (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) (*.f64 #s(literal 1 binary64) re))
(fma.f64 im (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) (neg.f64 (neg.f64 re)))
(fma.f64 im (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) re)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))) (/.f64 (*.f64 re re) (fma.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 im re)) im (neg.f64 re))))
(-.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (neg.f64 re))
(+.f64 (-.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) #s(literal 0 binary64)) re)
(+.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) re))
(+.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) (neg.f64 (neg.f64 re)))
(+.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)) re)
(+.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal 1/2 binary64)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im))
(*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 im im)) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(*.f64 (fma.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 im (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 im im))) (neg.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 im (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 im im)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))
(/.f64 (fma.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im im (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (*.f64 re im)))))
(/.f64 (fma.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 im (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 im (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (fma.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 3 binary64)) (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(fma.f64 (*.f64 (*.f64 re re) #s(literal 1/2 binary64)) (pow.f64 im #s(literal -1 binary64)) im)
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 re re) im) im)
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 re re)) im)
(fma.f64 re (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) im)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (/.f64 (*.f64 im im) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(+.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) im)
(+.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(*.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 im)))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal -1 binary64)))
(pow.f64 (*.f64 im #s(literal 2 binary64)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 im #s(literal 2 binary64)))
(/.f64 #s(literal -1/2 binary64) (neg.f64 im))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 im #s(literal 2 binary64))))
(/.f64 #s(literal 1/2 binary64) (neg.f64 (neg.f64 im)))
(/.f64 #s(literal 1/2 binary64) im)
(neg.f64 (/.f64 #s(literal -1/2 binary64) im))
(*.f64 (*.f64 (neg.f64 re) #s(literal -1 binary64)) re)
(*.f64 (pow.f64 re #s(literal 1 binary64)) (pow.f64 re #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 re re))
(*.f64 #s(literal -1 binary64) (*.f64 re (neg.f64 re)))
(*.f64 (neg.f64 re) (neg.f64 re))
(*.f64 re re)
(pow.f64 (neg.f64 re) #s(literal 2 binary64))
(pow.f64 re #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 re) re))
(neg.f64 (*.f64 re (neg.f64 re)))
(exp.f64 (*.f64 (log.f64 re) #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re))) #s(literal 1/2 binary64)))
#s(approx (+ (* re re) (* im im)) (*.f64 re re))
(*.f64 (/.f64 #s(literal -1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 re re))) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) (neg.f64 re)))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (pow.f64 (*.f64 (/.f64 im re) im) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64)))) (fma.f64 re (-.f64 re (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64))) (pow.f64 (*.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(*.f64 #s(literal -1 binary64) (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(pow.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))))
(/.f64 #s(literal -1 binary64) (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re))
(neg.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 im re) im) #s(literal -1/2 binary64) re) #s(literal -1 binary64)))
(*.f64 (*.f64 im im) (pow.f64 re #s(literal -1 binary64)))
(*.f64 (/.f64 im re) im)
(*.f64 im (/.f64 im re))
(/.f64 (*.f64 #s(literal 1 binary64) im) (/.f64 re im))
(/.f64 (*.f64 im (neg.f64 im)) (neg.f64 re))
(/.f64 (*.f64 im #s(literal 1 binary64)) (/.f64 re im))
(/.f64 (*.f64 (neg.f64 im) im) (neg.f64 re))
(/.f64 (neg.f64 (*.f64 im im)) (neg.f64 re))
(/.f64 #s(literal 1 binary64) (/.f64 re (*.f64 im im)))
(/.f64 (*.f64 im im) re)
(/.f64 im (/.f64 re im))

eval81.0ms (1.9%)

Memory
-22.2MiB live, 60.3MiB allocated
Compiler

Compiled 10 103 to 1 051 computations (89.6% saved)

prune6.0ms (0.1%)

Memory
16.7MiB live, 16.7MiB allocated
Pruning

6 alts after pruning (1 fresh and 5 done)

PrunedKeptTotal
New2531254
Fresh000
Picked213
Done145
Total2566262
Accuracy
100.0%
Counts
262 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
54.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
54.0%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
99.5%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 62 to 43 computations (30.6% saved)

simplify4.0ms (0.1%)

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

Found 4 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01136
01536
12236
23336
34036
44536
04531
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(*.f64 (/.f64 #s(literal 1/2 binary64) im) re)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
re
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(*.f64 (/.f64 #s(literal 1/2 binary64) im) re)
(/.f64 #s(literal 1/2 binary64) im)
#s(literal 1/2 binary64)
im
re

localize31.0ms (0.7%)

Memory
-20.0MiB live, 53.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
accuracy0
(/.f64 #s(literal 1/2 binary64) im)
accuracy0.1953125
(*.f64 (/.f64 #s(literal 1/2 binary64) im) re)
accuracy0.31051115159539644
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
Samples
25.0ms256×0valid
Compiler

Compiled 66 to 21 computations (68.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-div: 6.0ms (38.3% of total)
ival-hypot: 4.0ms (25.5% of total)
ival-mult: 3.0ms (19.2% of total)
ival-add: 1.0ms (6.4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.1%)

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

6 calls:

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

simplify181.0ms (4.3%)

Memory
-18.7MiB live, 186.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0113446
1306446
2983444
33638408
47505408
08237373
Stop Event
iter limit
node limit
Counts
28 → 26
Calls
Call 1
Inputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(+ im (* (pow re 2) (+ (* (pow re 2) (- (* 1/16 (/ (pow re 2) (pow im 5))) (* 1/8 (/ 1 (pow im 3))))) (* 1/2 (/ 1 im)))))
(* 1/2 (/ re im))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* 1/2 (/ (pow re 2) im))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(* -1 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(+ 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 re 2)) (pow im 2)) im)
(/ 1/2 im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(* -1 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/2 (/ (pow re 2) (pow im 2))) 1)))
Outputs
im
(+ im (* 1/2 (/ (pow re 2) im)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(+ im (* (pow re 2) (+ (* -1/8 (/ (pow re 2) (pow im 3))) (* 1/2 (/ 1 im)))))
(fma.f64 (*.f64 (/.f64 re im) #s(literal 1/2 binary64)) re (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64))) 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 #s(literal 1/16 binary64) re) (/.f64 re (pow.f64 im #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(* 1/2 (/ re im))
(*.f64 (/.f64 re im) #s(literal 1/2 binary64))
re
(* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 (*.f64 (pow.f64 im #s(literal 4 binary64)) #s(literal -1/8 binary64)) (/.f64 re (pow.f64 re #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im 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 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) re (*.f64 (/.f64 (*.f64 im im) re) #s(literal 1/2 binary64)))
(* 1/2 (/ (pow re 2) im))
(*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64))
(* (pow re 2) (+ (* 1/2 (/ 1 im)) (/ im (pow re 2))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* -1 re)
(neg.f64 re)
(* -1 (* re (+ 1 (* 1/2 (/ (pow im 2) (pow re 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re) (neg.f64 re))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (* 1/2 (/ (pow im 2) (pow re 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) re (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(* -1 (* re (+ 1 (+ (* -1/8 (/ (pow im 4) (pow re 4))) (+ (* 1/16 (/ (pow im 6) (pow re 6))) (* 1/2 (/ (pow im 2) (pow re 2))))))))
(fma.f64 (fma.f64 (pow.f64 im #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 re #s(literal 6 binary64))) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 re) (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 im im) re)))
(+ re (* 1/2 (/ (pow im 2) re)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re)
(+ re (* (pow im 2) (+ (* -1/8 (/ (pow im 2) (pow re 3))) (* 1/2 (/ 1 re)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) (fma.f64 (pow.f64 im #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 re #s(literal 3 binary64))) 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 #s(literal 1/16 binary64) im) (/.f64 im (pow.f64 re #s(literal 5 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 re 2)) (pow im 2)) im)
(/.f64 (fma.f64 (*.f64 re re) #s(literal 1/2 binary64) (*.f64 im im)) im)
(/ 1/2 im)
(/.f64 #s(literal 1/2 binary64) im)
(* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2)))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 (*.f64 #s(literal -1/8 binary64) im) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) 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 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) im (*.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64)))
(* -1 im)
(neg.f64 im)
(* -1 (* im (+ 1 (* 1/2 (/ (pow re 2) (pow im 2))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) (neg.f64 im))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (* 1/2 (/ (pow re 2) (pow im 2)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) #s(literal 1/8 binary64) #s(literal -1 binary64)) im (*.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im)))
(* -1 (* im (+ 1 (+ (* -1/8 (/ (pow re 4) (pow im 4))) (+ (* 1/16 (/ (pow re 6) (pow im 6))) (* 1/2 (/ (pow re 2) (pow im 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) re) (/.f64 re im) (*.f64 (fma.f64 (pow.f64 re #s(literal 6 binary64)) (/.f64 #s(literal 1/16 binary64) (pow.f64 im #s(literal 6 binary64))) (fma.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 im #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 im)))
(* -1 (* im (- (* -1/2 (/ (pow re 2) (pow im 2))) 1)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)

rewrite172.0ms (4.1%)

Memory
9.7MiB live, 250.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01133
01533
15933
240933
3448833
0881528
Stop Event
iter limit
node limit
iter limit
Counts
4 → 150
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(*.f64 (/.f64 #s(literal 1/2 binary64) im) re)
(/.f64 #s(literal 1/2 binary64) im)
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(*.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im) #s(literal 2 binary64)))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)))
(*.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -6 binary64)) (pow.f64 re #s(literal 12 binary64)) (pow.f64 (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (*.f64 (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im) (-.f64 (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))))
(*.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(*.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (pow.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im)) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))
(*.f64 (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))))
(*.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (pow.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im) #s(literal -1 binary64)))
(*.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (pow.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))) #s(literal -1 binary64)))
(*.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im)))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) (/.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))))
(*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) #s(literal -1 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (/.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im))))
(pow.f64 (/.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im))) (fma.f64 im im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) #s(literal -1 binary64))) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -9 binary64)) (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 9 binary64))) (pow.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) #s(literal -1 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -6 binary64)) (pow.f64 re #s(literal 12 binary64)) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 3 binary64)))))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) #s(literal 1 binary64)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) #s(literal 2 binary64)) (pow.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))) #s(literal 2 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) #s(literal 3 binary64)) (pow.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))))
(/.f64 (neg.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (neg.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im)))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (fma.f64 im im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -9 binary64)) (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 9 binary64))) #s(literal 1 binary64)) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -6 binary64)) (pow.f64 re #s(literal 12 binary64)) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (*.f64 im im))) (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (neg.f64 (pow.f64 im #s(literal 4 binary64)))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (fma.f64 im im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -4 binary64)) (pow.f64 re #s(literal 8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 2 binary64)) (pow.f64 im #s(literal 4 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))))
(/.f64 (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -9 binary64)) (pow.f64 re #s(literal 18 binary64)) (pow.f64 im #s(literal 9 binary64))) (*.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -6 binary64)) (pow.f64 re #s(literal 12 binary64)) (-.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) re) #s(literal 3 binary64))))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64))))
(/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) (-.f64 (*.f64 im im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64)))
(/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))
(neg.f64 (/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im))))
(neg.f64 (/.f64 (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im)))
(neg.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 re #s(literal 6 binary64))) (pow.f64 im #s(literal -3 binary64)) (pow.f64 im #s(literal 3 binary64))) (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (pow.f64 re #s(literal 4 binary64)) (*.f64 (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re)) im)))))
(fma.f64 (exp.f64 (log.f64 #s(literal 1/2 binary64))) (/.f64 (*.f64 re re) im) im)
(fma.f64 (/.f64 (*.f64 re re) #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 (/.f64 (*.f64 re re) (neg.f64 im)) #s(literal -1/2 binary64) im)
(fma.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 3 binary64)) (pow.f64 im #s(literal 3 binary64)))) (fma.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (neg.f64 im) im (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (sqrt.f64 im) (sqrt.f64 im) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) (pow.f64 im #s(literal -1 binary64)) im)
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) re) re) (/.f64 #s(literal -1 binary64) im) im)
(fma.f64 (*.f64 (pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal -2 binary64)) re) (/.f64 re (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (/.f64 (*.f64 re re) im) #s(literal 1/2 binary64) im)
(fma.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (/.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -2 binary64)) (/.f64 (pow.f64 re #s(literal 4 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal -2 binary64)) (/.f64 (*.f64 re re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 #s(literal -1 binary64) (neg.f64 im) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(fma.f64 (*.f64 #s(literal 1/2 binary64) re) (/.f64 re im) im)
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 (*.f64 re re) #s(literal 2 binary64)) im)
(fma.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) re) re) im)
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) im)
(fma.f64 #s(literal 1 binary64) im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(fma.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) im) im)) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 re re) (neg.f64 im)) im)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal -1 binary64) im) (*.f64 re re)) im)
(fma.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) (/.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) (/.f64 (*.f64 (pow.f64 re #s(literal 3 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im)
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (/.f64 (*.f64 (pow.f64 re #s(literal 4 binary64)) (/.f64 #s(literal 1/2 binary64) im)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im)
(fma.f64 #s(literal 1/2 binary64) (/.f64 (*.f64 re re) im) im)
(fma.f64 im #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(fma.f64 (*.f64 re re) (/.f64 (pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal -2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 (*.f64 re re) (/.f64 #s(literal 1/2 binary64) im) im)
(fma.f64 re (/.f64 (*.f64 (pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal -2 binary64)) re) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(fma.f64 re (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) im)
(-.f64 (/.f64 (*.f64 im im) (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))) (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (-.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im)))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im) #s(literal -1 binary64))) #s(literal -1 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) #s(literal 2 binary64)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))) (neg.f64 (*.f64 im (/.f64 im (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re (neg.f64 im))))))
(+.f64 (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re) im)
(+.f64 im (*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re))
(*.f64 (/.f64 re #s(literal 1 binary64)) (/.f64 #s(literal 1/2 binary64) im))
(*.f64 (/.f64 re (neg.f64 im)) #s(literal -1/2 binary64))
(*.f64 (/.f64 re #s(literal -1 binary64)) (/.f64 #s(literal -1/2 binary64) im))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (/.f64 re im) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) re) (/.f64 #s(literal -1 binary64) im))
(*.f64 (*.f64 #s(literal 1/2 binary64) re) (pow.f64 im #s(literal -1 binary64)))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (/.f64 re #s(literal 2 binary64)))
(*.f64 (pow.f64 im #s(literal -1 binary64)) (*.f64 #s(literal 1/2 binary64) re))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1/2 binary64) im) re))
(*.f64 #s(literal -1/2 binary64) (/.f64 re (neg.f64 im)))
(*.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 #s(literal -1 binary64) im) re))
(*.f64 (/.f64 #s(literal 1/2 binary64) im) re)
(*.f64 #s(literal 1/2 binary64) (/.f64 re im))
(*.f64 re (/.f64 #s(literal 1/2 binary64) im))
(pow.f64 (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) re) #s(literal -1 binary64)) im)
(/.f64 (*.f64 #s(literal -1 binary64) re) (*.f64 im #s(literal -2 binary64)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal -1 binary64)) (neg.f64 im))
(/.f64 (*.f64 re #s(literal -1 binary64)) (*.f64 im #s(literal -2 binary64)))
(/.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) re)) im)
(/.f64 (neg.f64 re) (*.f64 im #s(literal -2 binary64)))
(/.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) re) #s(literal 1 binary64)) im)
(/.f64 (/.f64 re im) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -1/2 binary64) re) (neg.f64 im))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re)))
(/.f64 (*.f64 #s(literal 1/2 binary64) re) im)
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) im) re))
(/.f64 re (*.f64 #s(literal 2 binary64) im))
(neg.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) re) im))
(neg.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) re) (neg.f64 im)))
(neg.f64 (*.f64 re (/.f64 #s(literal -1/2 binary64) im)))
(neg.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) im) re))
(exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 #s(literal 2 binary64) im) re)) #s(literal -1 binary64)))
(exp.f64 (log.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re)))
(*.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1/2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) im) #s(literal -1/2 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1/2 binary64) im))
(*.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) im))
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal -1 binary64) im))
(*.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (pow.f64 im #s(literal -1 binary64)))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) im) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1/2 binary64) im) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (*.f64 im #s(literal -2 binary64)))
(/.f64 (pow.f64 im #s(literal -1 binary64)) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) im))
(/.f64 #s(literal -1/2 binary64) (neg.f64 im))
(/.f64 #s(literal 1/2 binary64) im)
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) im)))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1/2 binary64) im)))
(neg.f64 (/.f64 #s(literal -1/2 binary64) im))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1/2 binary64) im))
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) im)))

eval22.0ms (0.5%)

Memory
5.0MiB live, 43.4MiB allocated
Compiler

Compiled 5 214 to 673 computations (87.1% saved)

prune89.0ms (2.1%)

Memory
-20.4MiB live, 18.7MiB allocated
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New1730173
Fresh000
Picked011
Done055
Total1736179
Accuracy
100.0%
Counts
179 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 re im)
54.8%
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
4.6%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
54.0%
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
99.5%
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
1.8%
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Compiler

Compiled 204 to 84 computations (58.8% saved)

regimes23.0ms (0.6%)

Memory
-7.2MiB live, 37.7MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
(hypot.f64 re im)
Outputs
(hypot.f64 re im)
Calls

6 calls:

6.0ms
re
4.0ms
im
3.0ms
(*.f64 im im)
3.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
3.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
Results
AccuracySegmentsBranch
100.0%1re
100.0%1im
100.0%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
100.0%1(+.f64 (*.f64 re re) (*.f64 im im))
100.0%1(*.f64 re re)
100.0%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes22.0ms (0.5%)

Memory
4.9MiB live, 42.8MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 #s(literal 1/2 binary64) im) (/.f64 im re) re))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (/.f64 #s(literal 1/2 binary64) im) (*.f64 re re) im))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 (fma.f64 (/.f64 im re) (*.f64 #s(literal 1/2 binary64) im) re) (*.f64 (fma.f64 (*.f64 (/.f64 im re) #s(literal 1/2 binary64)) im (neg.f64 re)) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 im re) im) re)))))
Outputs
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
Calls

6 calls:

5.0ms
re
3.0ms
im
3.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
3.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
3.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
99.5%1re
99.5%1im
99.5%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
99.5%1(+.f64 (*.f64 re re) (*.f64 im im))
99.5%1(*.f64 re re)
99.5%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes15.0ms (0.4%)

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

6 calls:

4.0ms
re
2.0ms
im
2.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
2.0ms
(*.f64 im im)
2.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
Results
AccuracySegmentsBranch
54.8%1re
54.8%1im
54.8%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
54.8%1(+.f64 (*.f64 re re) (*.f64 im im))
54.8%1(*.f64 re re)
54.8%1(*.f64 im im)
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes11.0ms (0.3%)

Memory
20.4MiB live, 20.4MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 re re)))
Outputs
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
Calls

6 calls:

2.0ms
im
2.0ms
re
2.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
2.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
2.0ms
(*.f64 im im)
Results
AccuracySegmentsBranch
54.0%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
54.0%1(+.f64 (*.f64 re re) (*.f64 im im))
54.0%1(*.f64 im im)
54.0%1(*.f64 re re)
54.0%1re
54.0%1im
Compiler

Compiled 23 to 21 computations (8.7% saved)

regimes8.0ms (0.2%)

Memory
16.4MiB live, 16.4MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

6 calls:

1.0ms
im
1.0ms
re
1.0ms
(*.f64 im im)
1.0ms
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
Results
AccuracySegmentsBranch
1.8%1(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
1.8%1(+.f64 (*.f64 re re) (*.f64 im im))
1.8%1(*.f64 im im)
1.8%1re
1.8%1(*.f64 re re)
1.8%1im
Compiler

Compiled 23 to 21 computations (8.7% saved)

simplify36.0ms (0.9%)

Memory
-1.1MiB live, 38.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01950
12450
22650
32750
Stop Event
saturated
Calls
Call 1
Inputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))
Outputs
(hypot.f64 re im)
#s(approx (sqrt (+ (* re re) (* im im))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) im) re) re im))
(sqrt.f64 (fma.f64 re re (*.f64 im im)))
(sqrt.f64 #s(approx (+ (* re re) (* im im)) (*.f64 im im)))
#s(approx (sqrt (+ (* re re) (* im im))) (neg.f64 re))

soundness512.0ms (12.3%)

Memory
-35.0MiB live, 375.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0621
01021
12921
219621
3178821
0862415
027164
046164
1167151
01235139
0104429
1296429
2953427
33667393
46426391
08051354
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 107 to 58 computations (45.8% saved)

preprocess58.0ms (1.4%)

Memory
27.4MiB live, 66.7MiB allocated
Remove

(sort re im)

(abs re)

(abs im)

Compiler

Compiled 134 to 68 computations (49.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...