math.square on complex, real part

Time bar (total: 2.7s)

analyze0.0ms (0%)

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 6 computations (40% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-sub: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample612.0ms (22.4%)

Results
452.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 184.0ms
ival-mult: 135.0ms (73.3% of total)
ival-sub: 40.0ms (21.7% of total)
const: 6.0ms (3.3% of total)
backward-pass: 3.0ms (1.6% of total)
Bogosity

preprocess39.0ms (1.4%)

Algorithm
egg-herbie
Rules
260×fnmadd-define
206×sum3-define
190×fma-define
176×fnmadd-define
160×fmsub-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01433
15530
212430
327330
454330
569330
671730
055
1145
2235
3365
4575
51185
62035
73615
85675
97715
108975
119115
09115
Stop Event
iter limit
saturated
saturated
Calls
Call 1
Inputs
(- (* re re) (* im im))
Outputs
(- (* re re) (* im im))
(-.f64 (*.f64 re re) (*.f64 im im))
Call 2
Inputs
(- (* re re) (* im im))
(- (* (neg re) (neg re)) (* im im))
(- (* re re) (* (neg im) (neg im)))
(neg (- (* (neg re) (neg re)) (* im im)))
(neg (- (* re re) (* (neg im) (neg im))))
(- (* im im) (* re re))
Outputs
(- (* re re) (* im im))
(fmsub re re (square im))
(- (* (neg re) (neg re)) (* im im))
(fmsub re re (square im))
(- (* re re) (* (neg im) (neg im)))
(fmsub re re (square im))
(neg (- (* (neg re) (neg re)) (* im im)))
(fmsub im im (square re))
(neg (- (* re re) (* (neg im) (neg im))))
(fmsub im im (square re))
(- (* im im) (* re re))
(fmsub im im (square re))
Symmetry

(abs re)

(abs im)

explain62.0ms (2.3%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
130-0-(-.f64 (*.f64 re re) (*.f64 im im))
00-0-im
00-0-(*.f64 im im)
00-0-(*.f64 re re)
00-0-re
Results
37.0ms512×0valid
Compiler

Compiled 45 to 17 computations (62.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 8.0ms (72.8% of total)
ival-sub: 3.0ms (27.3% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
94.9%
(-.f64 (*.f64 re re) (*.f64 im im))
Compiler

Compiled 9 to 5 computations (44.4% saved)

simplify19.0ms (0.7%)

Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 im im)
cost-diff0
(*.f64 re re)
cost-diff0
(-.f64 (*.f64 re re) (*.f64 im im))
Rules
260×fnmadd-define
206×sum3-define
190×fma-define
156×fma-lowering-fma.f32
156×fmsub-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
11411
22311
33611
45711
511811
620311
736111
856711
977111
1089711
1191111
091111
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(- (* re re) (* im im))
(* re re)
re
(* im im)
im
Outputs
(- (* re re) (* im im))
(-.f64 (*.f64 re re) (*.f64 im im))
(* re re)
(*.f64 re re)
re
(* im im)
(*.f64 im im)
im

localize27.0ms (1%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 re re)
accuracy100.0%
(*.f64 im im)
accuracy95.4%
(-.f64 (*.f64 re re) (*.f64 im im))
Results
20.0ms256×0valid
Compiler

Compiled 18 to 6 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 5.0ms (77.4% of total)
ival-sub: 1.0ms (15.5% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0.1%)

Counts
3 → 48
Calls
Call 1
Inputs
#<alt (- (* re re) (* im im))>
#<alt (* re re)>
#<alt (* im im)>
Outputs
#<alt (* -1 (pow im 2))>
#<alt (- (pow re 2) (pow im 2))>
#<alt (- (pow re 2) (pow im 2))>
#<alt (- (pow re 2) (pow im 2))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
Calls

12 calls:

TimeVariablePointExpression
0.0ms
re
@0
(- (* re re) (* im im))
0.0ms
re
@inf
(- (* re re) (* im im))
0.0ms
im
@0
(- (* re re) (* im im))
0.0ms
im
@inf
(- (* re re) (* im im))
0.0ms
re
@-inf
(- (* re re) (* im im))

rewrite218.0ms (8%)

Algorithm
batch-egg-rewrite
Rules
1902×sum4-define
1280×+-lowering-+.f64
1280×+-lowering-+.f32
1104×*-lowering-*.f32
1104×*-lowering-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059
1199
2459
32029
411959
529819
664129
080859
Stop Event
iter limit
node limit
Counts
3 → 239
Calls
Call 1
Inputs
(- (* re re) (* im im))
(* re re)
(* im im)
Outputs
(+.f64 (*.f64 re re) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 im (+.f64 (*.f64 im (-.f64 #s(literal -1 binary64) im)) (*.f64 re re)))
(+.f64 im (neg.f64 (+.f64 (*.f64 im (-.f64 #s(literal 1 binary64) im)) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))))
(+.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(+.f64 (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 im (-.f64 #s(literal 1 binary64) im)) (*.f64 re re)))
(+.f64 (-.f64 #s(literal 0 binary64) im) (neg.f64 (+.f64 (*.f64 im (-.f64 #s(literal -1 binary64) im)) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))))
(+.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re))
(+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) (*.f64 im im))
(+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -3 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal 3 binary64))) (+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64)))))
(+.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 im (*.f64 #s(literal -4 binary64) im)))
(+.f64 (-.f64 (*.f64 re re) im) (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(+.f64 (+.f64 (*.f64 re re) im) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re)) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) im) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(+.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) im) (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(+.f64 (neg.f64 (-.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re re))) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(-.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(-.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)) (*.f64 im (*.f64 im #s(literal 3 binary64)))))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal 3 binary64))))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(-.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal 4 binary64)))
(-.f64 (-.f64 (*.f64 re re) im) (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(-.f64 (+.f64 (*.f64 re re) im) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(-.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re)) (*.f64 re re))
(-.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) im) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(-.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) im) (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(fma.f64 re re (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 im im (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (*.f64 re re))
(fma.f64 im #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (*.f64 re re))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (*.f64 re re))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 0 binary64) (*.f64 im im) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 2 binary64) #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 2 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im im)))
(neg.f64 (-.f64 (*.f64 im im) (*.f64 re re)))
(*.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(*.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (-.f64 (*.f64 im im) (*.f64 re re)) #s(literal -1 binary64))
(+.f64 (*.f64 re re) #s(literal 0 binary64))
(+.f64 im (+.f64 (*.f64 im (-.f64 #s(literal -1 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 im (neg.f64 (+.f64 (*.f64 im (-.f64 #s(literal 1 binary64) im)) (-.f64 (*.f64 im im) (*.f64 re re)))))
(+.f64 (*.f64 im im) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im im))
(+.f64 (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 im (-.f64 #s(literal 1 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (-.f64 #s(literal 0 binary64) im) (neg.f64 (+.f64 (*.f64 im (-.f64 #s(literal -1 binary64) im)) (-.f64 (*.f64 im im) (*.f64 re re)))))
(+.f64 #s(literal 0 binary64) (*.f64 re re))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) #s(literal -1 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (neg.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) #s(literal -1 binary64))))
(+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (neg.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) #s(literal -1 binary64))))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -3 binary64)) (+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (*.f64 im (*.f64 im #s(literal 3 binary64))) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))))
(+.f64 (*.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(+.f64 (+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(+.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 im (*.f64 #s(literal -4 binary64) im)))
(+.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(+.f64 (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(+.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) #s(literal -1 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) #s(literal -1 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(+.f64 (neg.f64 (*.f64 (*.f64 re re) #s(literal -2 binary64))) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 re)))
(-.f64 (*.f64 re re) #s(literal 0 binary64))
(-.f64 (*.f64 im im) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(-.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (*.f64 re re)))
(-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im im))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(-.f64 (*.f64 im (*.f64 im #s(literal 3 binary64))) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)) (*.f64 im (*.f64 im #s(literal 3 binary64)))))
(-.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 3 binary64)))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(-.f64 (+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 im (*.f64 im #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(-.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(-.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 (*.f64 im im) #s(literal 4 binary64)))
(-.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) (*.f64 re re))
(-.f64 (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(-.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) im) (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(-.f64 (+.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 3 binary64))))
(fma.f64 re re #s(literal 0 binary64))
(fma.f64 im im (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 im #s(literal 0 binary64) (*.f64 re re))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 #s(literal 0 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 #s(literal 2 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (-.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -2 binary64))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal 2 binary64))))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (-.f64 #s(literal 0 binary64) re) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 re))
(*.f64 re re)
(*.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)))
(*.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)))
(*.f64 (*.f64 re re) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 re re)))
(*.f64 #s(literal 1 binary64) (*.f64 re re))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re))
(*.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re))
(+.f64 im (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(+.f64 (*.f64 im im) #s(literal 0 binary64))
(+.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(+.f64 #s(literal 0 binary64) (*.f64 im im))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (*.f64 im (*.f64 im #s(literal 3 binary64))))
(+.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 (*.f64 im im) #s(literal -3 binary64)) (*.f64 (*.f64 im im) #s(literal 4 binary64)))
(+.f64 (*.f64 im (*.f64 im #s(literal 3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 4 binary64)) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+.f64 (*.f64 im (+.f64 #s(literal -1 binary64) im)) im)
(+.f64 (*.f64 im (+.f64 #s(literal 1 binary64) im)) (-.f64 #s(literal 0 binary64) im))
(+.f64 (*.f64 im (+.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(+.f64 (*.f64 im (+.f64 (*.f64 im #s(literal 2 binary64)) #s(literal -1 binary64))) (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(+.f64 (*.f64 (*.f64 im im) #s(literal 5 binary64)) (*.f64 im (*.f64 #s(literal -4 binary64) im)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(-.f64 im (*.f64 im (-.f64 #s(literal 1 binary64) im)))
(-.f64 (*.f64 im im) #s(literal 0 binary64))
(-.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im (-.f64 #s(literal -1 binary64) im)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
(-.f64 (*.f64 (*.f64 im im) #s(literal -2 binary64)) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 im im))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 re re)) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (*.f64 (*.f64 im im) #s(literal -3 binary64)) (*.f64 im (*.f64 #s(literal -4 binary64) im)))
(-.f64 (*.f64 im (*.f64 im #s(literal 3 binary64))) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(-.f64 (*.f64 (*.f64 im im) #s(literal 4 binary64)) (*.f64 im (*.f64 im #s(literal 3 binary64))))
(-.f64 (*.f64 im (+.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 1 binary64))) (*.f64 im (+.f64 #s(literal 1 binary64) im)))
(-.f64 (*.f64 im (+.f64 (*.f64 im #s(literal 2 binary64)) #s(literal -1 binary64))) (*.f64 im (+.f64 #s(literal -1 binary64) im)))
(-.f64 (*.f64 (*.f64 im im) #s(literal 5 binary64)) (*.f64 (*.f64 im im) #s(literal 4 binary64)))
(fma.f64 im im #s(literal 0 binary64))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im im) #s(literal 2 binary64)))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (-.f64 #s(literal 0 binary64) im) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (-.f64 #s(literal 0 binary64) im)))
(pow.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64))
(*.f64 im im)
(*.f64 im (+.f64 (*.f64 im #s(literal -2 binary64)) (*.f64 im #s(literal 3 binary64))))
(*.f64 im (-.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) im)))
(*.f64 im (-.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) im)))
(*.f64 im (-.f64 (*.f64 im #s(literal -2 binary64)) (*.f64 im #s(literal -3 binary64))))
(*.f64 im (-.f64 (*.f64 im #s(literal -3 binary64)) (*.f64 #s(literal -4 binary64) im)))
(*.f64 (*.f64 im im) #s(literal 1 binary64))
(*.f64 (*.f64 im im) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 #s(literal -1 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal -1 binary64) (+.f64 #s(literal -1 binary64) im)))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 (*.f64 im #s(literal 3 binary64)) (*.f64 #s(literal 4 binary64) im)))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 (*.f64 im #s(literal -3 binary64)) (*.f64 im #s(literal -2 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 1 binary64) (+.f64 im #s(literal 1 binary64))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 #s(literal 1 binary64) (*.f64 im im))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 #s(literal -1 binary64))) (*.f64 im im))
(*.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) im))) (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) im))))
(*.f64 (exp.f64 (log.f64 #s(literal -1 binary64))) (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)))))
(*.f64 (exp.f64 (log.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)))) (exp.f64 (log.f64 #s(literal -1 binary64))))

simplify138.0ms (5.1%)

Algorithm
egg-herbie
Rules
2294×/-lowering-/.f32
2294×/-lowering-/.f64
1560×*-lowering-*.f32
1560×*-lowering-*.f64
1456×fma-lowering-fma.f32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017219
140153
2122153
3505153
41779153
53536153
67715153
08285153
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
(* -1 (pow im 2))
(- (pow re 2) (pow im 2))
(- (pow re 2) (pow im 2))
(- (pow re 2) (pow im 2))
(pow re 2)
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
Outputs
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(- (pow re 2) (pow im 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (pow re 2) (pow im 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (pow re 2) (pow im 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow re 2) (+ 1 (* -1 (/ (pow im 2) (pow re 2)))))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)

eval28.0ms (1%)

Compiler

Compiled 3788 to 517 computations (86.4% saved)

prune30.0ms (1.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2834287
Fresh000
Picked011
Done000
Total2835288
Accuracy
100.0%
Counts
288 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.3%
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
94.9%
(-.f64 (*.f64 re re) (*.f64 im im))
76.6%
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
54.7%
(-.f64 #s(literal 0 binary64) (*.f64 im im))
53.6%
(*.f64 re re)
Compiler

Compiled 53 to 31 computations (41.5% saved)

simplify131.0ms (4.8%)

Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 im im) #s(literal -3 binary64))
cost-diff0
(*.f64 re re)
cost-diff0
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
cost-diff512
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
cost-diff0
(*.f64 (*.f64 im im) #s(literal 2 binary64))
cost-diff0
(-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re))
cost-diff0
(*.f64 im im)
cost-diff384
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
cost-diff0
(*.f64 im im)
cost-diff0
(-.f64 #s(literal 0 binary64) (*.f64 im im))
cost-diff0
(*.f64 re re)
Rules
1688×+-lowering-+.f64
1688×+-lowering-+.f32
1424×--lowering--.f32
1424×--lowering--.f64
1110×*-lowering-*.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01668
15367
214961
337159
4117959
5507559
6690659
0800459
Stop Event
iter limit
node limit
Calls
Call 1
Inputs
(* re re)
re
(- 0 (* im im))
0
(* im im)
im
(- (* im im) (- (* (* im im) 2) (* re re)))
(* im im)
im
(- (* (* im im) 2) (* re re))
(* (* im im) 2)
2
(* re re)
re
(- (+ (* re re) (* (* im im) -3)) (* (* im im) -2))
(+ (* re re) (* (* im im) -3))
(* re re)
re
(* (* im im) -3)
(* im im)
im
-3
(* (* im im) -2)
-2
Outputs
(* re re)
(*.f64 re re)
re
(- 0 (* im im))
(*.f64 im (-.f64 #s(literal 0 binary64) im))
0
#s(literal 0 binary64)
(* im im)
(*.f64 im im)
im
(- (* im im) (- (* (* im im) 2) (* re re)))
(-.f64 (*.f64 re re) (*.f64 im im))
(* im im)
(*.f64 im im)
im
(- (* (* im im) 2) (* re re))
(-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re))
(* (* im im) 2)
(*.f64 im (*.f64 im #s(literal 2 binary64)))
2
#s(literal 2 binary64)
(* re re)
(*.f64 re re)
re
(- (+ (* re re) (* (* im im) -3)) (* (* im im) -2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* re re) (* (* im im) -3))
(+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(* re re)
(*.f64 re re)
re
(* (* im im) -3)
(*.f64 im (*.f64 im #s(literal -3 binary64)))
(* im im)
(*.f64 im im)
im
-3
#s(literal -3 binary64)
(* (* im im) -2)
(*.f64 im (*.f64 im #s(literal -2 binary64)))
-2
#s(literal -2 binary64)

localize84.0ms (3.1%)

Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 (*.f64 im im) #s(literal -2 binary64))
accuracy99.7%
(*.f64 (*.f64 im im) #s(literal -3 binary64))
accuracy95.4%
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
accuracy78.5%
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
accuracy100.0%
(*.f64 im im)
accuracy100.0%
(*.f64 (*.f64 im im) #s(literal 2 binary64))
accuracy95.5%
(-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re))
accuracy78.9%
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
accuracy100.0%
(-.f64 #s(literal 0 binary64) (*.f64 im im))
accuracy100.0%
(*.f64 im im)
accuracy100.0%
(*.f64 re re)
Results
62.0ms256×0valid
Compiler

Compiled 97 to 17 computations (82.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 9.0ms (59% of total)
ival-sub: 5.0ms (32.8% of total)
ival-add: 1.0ms (6.6% of total)
const: 1.0ms (6.6% of total)
backward-pass: 0.0ms (0% of total)

series6.0ms (0.2%)

Counts
10 → 168
Calls
Call 1
Inputs
#<alt (* re re)>
#<alt (- 0 (* im im))>
#<alt (* im im)>
#<alt (- (* im im) (- (* (* im im) 2) (* re re)))>
#<alt (- (* (* im im) 2) (* re re))>
#<alt (* (* im im) 2)>
#<alt (- (+ (* re re) (* (* im im) -3)) (* (* im im) -2))>
#<alt (+ (* re re) (* (* im im) -3))>
#<alt (* (* im im) -3)>
#<alt (* (* im im) -2)>
Outputs
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (pow re 2)>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow re 2)>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (- (pow im 2) (* 2 (pow im 2)))>
#<alt (- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))>
#<alt (- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))>
#<alt (- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))>
#<alt (* -1 (pow re 2))>
#<alt (- (* 2 (pow im 2)) (pow re 2))>
#<alt (- (* 2 (pow im 2)) (pow re 2))>
#<alt (- (* 2 (pow im 2)) (pow re 2))>
#<alt (* 2 (pow im 2))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* 2 (pow im 2))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))>
#<alt (* 2 (pow im 2))>
#<alt (+ (* -1 (pow re 2)) (* 2 (pow im 2)))>
#<alt (+ (* -1 (pow re 2)) (* 2 (pow im 2)))>
#<alt (+ (* -1 (pow re 2)) (* 2 (pow im 2)))>
#<alt (* -1 (pow re 2))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* -1 (pow re 2))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (* 2 (pow im 2))>
#<alt (- (* -3 (pow im 2)) (* -2 (pow im 2)))>
#<alt (- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))>
#<alt (- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))>
#<alt (- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (+ (* -1 (pow im 2)) (pow re 2))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* -1 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))>
#<alt (* -3 (pow im 2))>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))>
#<alt (pow re 2)>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (+ (* -3 (pow im 2)) (pow re 2))>
#<alt (* -3 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* -3 (pow im 2))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -3 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
#<alt (* -2 (pow im 2))>
Calls

42 calls:

TimeVariablePointExpression
1.0ms
im
@inf
(* (* im im) -3)
0.0ms
re
@0
(- (* im im) (- (* (* im im) 2) (* re re)))
0.0ms
re
@0
(- (+ (* re re) (* (* im im) -3)) (* (* im im) -2))
0.0ms
im
@inf
(* (* im im) -2)
0.0ms
im
@inf
(* (* im im) 2)

rewrite129.0ms (4.7%)

Algorithm
batch-egg-rewrite
Rules
1814×sum3-define
1646×sum4-define
1442×fmsub-define
1412×prod-diff
1320×fmm-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01650
15849
221343
390941
4712341
0845741
Stop Event
iter limit
node limit
Counts
10 → 633
Calls
Call 1
Inputs
(* re re)
(- 0 (* im im))
(* im im)
(- (* im im) (- (* (* im im) 2) (* re re)))
(- (* (* im im) 2) (* re re))
(* (* im im) 2)
(- (+ (* re re) (* (* im im) -3)) (* (* im im) -2))
(+ (* re re) (* (* im im) -3))
(* (* im im) -3)
(* (* im im) -2)
Outputs
(+.f64 (*.f64 re re) #s(literal 0 binary64))
(+.f64 (*.f64 re re) (fma.f64 (neg.f64 (*.f64 #s(literal 0 binary64) re)) re #s(literal 0 binary64)))
(+.f64 (*.f64 re re) (fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 re re) (fma.f64 #s(literal 0 binary64) #s(literal -1 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 re re) (fma.f64 #s(literal 0 binary64) #s(literal 2 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(+.f64 #s(literal 0 binary64) (*.f64 re re))
(+.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (neg.f64 (*.f64 (*.f64 re re) #s(literal -2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (*.f64 (-.f64 #s(literal 0 binary64) re) #s(literal 0 binary64)) (*.f64 re re))
(+.f64 (*.f64 (*.f64 (*.f64 re re) #s(literal -2 binary64)) #s(literal -1 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (*.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) re)) (*.f64 re re))
(+.f64 (-.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) #s(literal 0 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 re)))
(exp.f64 (+.f64 (log.f64 re) (log.f64 re)))
(-.f64 (*.f64 re re) #s(literal 0 binary64))
(-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)))
(-.f64 #s(literal 0 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(-.f64 (*.f64 (*.f64 re re) #s(literal 2 binary64)) (*.f64 re re))
(fma.f64 re re #s(literal 0 binary64))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64))
(fma.f64 re (-.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64))
(fma.f64 (*.f64 re re) #s(literal 2 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 (-.f64 #s(literal 0 binary64) re) re) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 re re) #s(literal -2 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) #s(literal 0 binary64))
(neg.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (-.f64 #s(literal 0 binary64) re) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 re))
(*.f64 re re)
(*.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)))
(*.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)))
(*.f64 (*.f64 re re) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re))
(*.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(*.f64 #s(literal 1 binary64) (*.f64 re re))
(*.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re))
(+.f64 (*.f64 im im) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im im))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (-.f64 #s(literal 0 binary64) im))))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 0 binary64))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (fma.f64 (neg.f64 (*.f64 #s(literal 0 binary64) re)) re #s(literal 0 binary64)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (fma.f64 #s(literal 0 binary64) #s(literal -1 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (-.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 (+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64))) im))
(+.f64 #s(literal 0 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 im #s(literal 0 binary64)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 #s(literal 0 binary64) im) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (*.f64 im im) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(-.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im)))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re))
(-.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (-.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re re)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 im im (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (*.f64 im im))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (*.f64 im im))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im im))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (*.f64 im im))
(fma.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64) (*.f64 im im))
(fma.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64) (*.f64 im im))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (*.f64 im im))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (*.f64 im im))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (*.f64 im im))
(fma.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (*.f64 im im))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))
(fma.f64 #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64) (*.f64 im im))
(neg.f64 (*.f64 im im))
(*.f64 im (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im im) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) im) im)
(*.f64 #s(literal -1 binary64) (*.f64 im im))
(+.f64 (*.f64 re re) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(+.f64 (*.f64 im im) #s(literal 0 binary64))
(+.f64 (*.f64 im im) (fma.f64 (neg.f64 (*.f64 #s(literal 0 binary64) re)) re #s(literal 0 binary64)))
(+.f64 (*.f64 im im) (fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 im im) (fma.f64 #s(literal 0 binary64) #s(literal -1 binary64) #s(literal 0 binary64)))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (neg.f64 (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 #s(literal 0 binary64) (*.f64 im im))
(+.f64 (neg.f64 (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(exp.f64 (+.f64 (log.f64 im) (log.f64 im)))
(-.f64 (*.f64 im im) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re))
(-.f64 (-.f64 (*.f64 im im) (*.f64 re re)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 re (*.f64 #s(literal 0 binary64) re) (*.f64 im im))
(fma.f64 im im #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 0 binary64) (*.f64 re re) (*.f64 im im))
(fma.f64 #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) #s(literal 0 binary64) (*.f64 im im))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) #s(literal 0 binary64))
(neg.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(*.f64 im im)
(*.f64 (*.f64 im im) #s(literal 1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(*.f64 #s(literal 1 binary64) (*.f64 im im))
(+.f64 (*.f64 re re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) #s(literal 0 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im im))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) #s(literal 0 binary64)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re re))
(+.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re (-.f64 #s(literal 0 binary64) re))) (*.f64 re re))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im)))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(-.f64 (*.f64 im im) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(-.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 #s(literal 0 binary64) (-.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (+.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 0 binary64)))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (*.f64 re re))
(-.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re re (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 im im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (*.f64 re re))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (*.f64 re re))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal -1 binary64) (*.f64 im im))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (*.f64 re re))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (*.f64 im im))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(neg.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))))
(neg.f64 (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(neg.f64 (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(*.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(+.f64 (*.f64 re re) (+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 re re) #s(literal -2 binary64))))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal 0 binary64))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (neg.f64 (*.f64 #s(literal 0 binary64) re)) re #s(literal 0 binary64)))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 0 binary64) #s(literal 0 binary64)))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (fma.f64 #s(literal 0 binary64) #s(literal -1 binary64) #s(literal 0 binary64)))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (-.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 1 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (-.f64 (*.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal 1 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 #s(literal 0 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(+.f64 (*.f64 (*.f64 re re) #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 re re) #s(literal -2 binary64))) (*.f64 re re))
(-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal 0 binary64))
(-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re))
(-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(-.f64 (+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 re re) #s(literal -2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(-.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (*.f64 re (-.f64 #s(literal 0 binary64) re))) (*.f64 re re))
(fma.f64 re (-.f64 #s(literal 0 binary64) re) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re (*.f64 #s(literal 0 binary64) re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 re (+.f64 (*.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re (+.f64 (-.f64 #s(literal 0 binary64) re) (*.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 (*.f64 re re) #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 2 binary64) #s(literal 0 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (-.f64 #s(literal 0 binary64) re) re (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 0 binary64) (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 #s(literal -1 binary64) (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) #s(literal 0 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 re re)) (*.f64 re re))
(fma.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(neg.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(*.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal 1 binary64))
(*.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(*.f64 #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(+.f64 (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (*.f64 re re))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -2 binary64)))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 0 binary64))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64))) (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 #s(literal -2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(+.f64 (*.f64 (*.f64 im #s(literal -2 binary64)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im #s(literal -2 binary64)) (*.f64 im #s(literal -3 binary64))) (*.f64 (*.f64 im #s(literal -2 binary64)) (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -2 binary64)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal -2 binary64)) (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -2 binary64)))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -2 binary64)) (*.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal -2 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im #s(literal -3 binary64)) (*.f64 im #s(literal -2 binary64))) (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64))))
(+.f64 (+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (*.f64 re re) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re))))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 re re))
(-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re re (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 re (*.f64 #s(literal 0 binary64) re) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 0 binary64))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im #s(literal 0 binary64))
(fma.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 0 binary64) (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 #s(literal -1 binary64) #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(neg.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))))
(neg.f64 (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(*.f64 im (*.f64 im #s(literal 2 binary64)))
(*.f64 (*.f64 im im) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(*.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)))
(*.f64 (*.f64 im #s(literal 2 binary64)) im)
(*.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(*.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 re re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) #s(literal 0 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im im))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) #s(literal 0 binary64)))
(+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re re))
(+.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64))))))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re (-.f64 #s(literal 0 binary64) re))) (*.f64 re re))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im)))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(-.f64 (*.f64 im im) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(-.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 #s(literal 0 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 #s(literal 0 binary64) (-.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 0 binary64)))
(-.f64 #s(literal 0 binary64) (+.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 0 binary64)))
(-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64))
(-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (+.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 (*.f64 re re) #s(literal 2 binary64))) (*.f64 re re))
(-.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (-.f64 (+.f64 (*.f64 re re) (*.f64 im im)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(fma.f64 re re (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re (+.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 re (-.f64 re (*.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 re re) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 im im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (*.f64 re re))
(fma.f64 im (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im im) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) (*.f64 re re))
(fma.f64 (*.f64 im im) #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) #s(literal -1 binary64) (*.f64 im im))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal -2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) #s(literal -1 binary64) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (*.f64 re re))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal -2 binary64)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im #s(literal -2 binary64)) (-.f64 #s(literal 0 binary64) im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (neg.f64 (-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 re re)) #s(literal 0 binary64))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -2 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal -1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 re re)) (*.f64 im im))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 #s(literal -1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(fma.f64 #s(literal 1 binary64) (*.f64 im im) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (+.f64 (*.f64 re re) (*.f64 im im)))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im im))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64) (neg.f64 (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 im im))))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) re)) (-.f64 #s(literal 0 binary64) re) (neg.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -3 binary64))))))
(neg.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re re) (*.f64 im im))))
(neg.f64 (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(neg.f64 (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im im)))
(*.f64 #s(literal -1 binary64) (+.f64 (*.f64 im im) (*.f64 re (-.f64 #s(literal 0 binary64) re))))
(*.f64 #s(literal -1 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (*.f64 re re))
(+.f64 (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) (*.f64 re (-.f64 #s(literal 0 binary64) re)))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(fma.f64 re re (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) (*.f64 re re))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) (*.f64 re re))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 (-.f64 #s(literal 0 binary64) re) (-.f64 #s(literal 0 binary64) re) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im (*.f64 re re))
(fma.f64 #s(literal -1 binary64) (*.f64 re (-.f64 #s(literal 0 binary64) re)) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 re re) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal 0 binary64))
(fma.f64 im (*.f64 im #s(literal -3 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal -3 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -3 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (*.f64 im #s(literal -3 binary64)) im #s(literal 0 binary64))
(*.f64 im (*.f64 im #s(literal -3 binary64)))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(*.f64 #s(literal -3 binary64) (*.f64 im im))
(*.f64 (*.f64 im #s(literal -3 binary64)) im)
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 0 binary64))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 (*.f64 im #s(literal 2 binary64)) (+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 (+.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -2 binary64))) (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64)))))
(+.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64)))) (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64)))))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (*.f64 im (*.f64 im #s(literal -3 binary64)))))
(+.f64 (*.f64 (*.f64 im #s(literal 2 binary64)) #s(literal 0 binary64)) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal -3 binary64))) (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 2 binary64)) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 im (*.f64 im #s(literal -3 binary64))) #s(literal 2 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im #s(literal 2 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(+.f64 (*.f64 (*.f64 im #s(literal -3 binary64)) (*.f64 im #s(literal 2 binary64))) (*.f64 (*.f64 im #s(literal 2 binary64)) (*.f64 im #s(literal 2 binary64))))
(+.f64 (+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(-.f64 (+.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal -2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(-.f64 (-.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) (*.f64 im (*.f64 im #s(literal 2 binary64)))) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(fma.f64 im (*.f64 im #s(literal -2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal -2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 0 binary64))
(fma.f64 #s(literal -2 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 (*.f64 im #s(literal -2 binary64)) im #s(literal 0 binary64))
(fma.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 0 binary64))
(fma.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)) #s(literal 0 binary64))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64) #s(literal 0 binary64))
(neg.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(*.f64 (*.f64 im im) #s(literal -2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(*.f64 #s(literal -2 binary64) (*.f64 im im))
(*.f64 (*.f64 im (*.f64 im #s(literal -2 binary64))) #s(literal 1 binary64))
(*.f64 (*.f64 im (*.f64 im #s(literal 2 binary64))) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) im) (*.f64 im #s(literal 2 binary64)))
(*.f64 (*.f64 im #s(literal 2 binary64)) (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im #s(literal -2 binary64)) im)
(*.f64 (*.f64 im (-.f64 #s(literal 0 binary64) im)) #s(literal 2 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 im (*.f64 im #s(literal 2 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im #s(literal -2 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) im)) (*.f64 im #s(literal 2 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 im (-.f64 #s(literal 0 binary64) im))) #s(literal 2 binary64))

simplify184.0ms (6.7%)

Algorithm
egg-herbie
Rules
2412×*-lowering-*.f32
2412×*-lowering-*.f64
2388×+-lowering-+.f64
2388×+-lowering-+.f32
1828×fnmadd-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0451215
1132891
2430795
32291783
08259783
Stop Event
iter limit
node limit
Counts
168 → 168
Calls
Call 1
Inputs
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(pow re 2)
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow re 2)
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(- (pow im 2) (* 2 (pow im 2)))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(pow re 2)
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(* -1 (pow re 2))
(- (* 2 (pow im 2)) (pow re 2))
(- (* 2 (pow im 2)) (pow re 2))
(- (* 2 (pow im 2)) (pow re 2))
(* 2 (pow im 2))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* 2 (pow im 2))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(* 2 (pow im 2))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(* -1 (pow re 2))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* -1 (pow re 2))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(* 2 (pow im 2))
(- (* -3 (pow im 2)) (* -2 (pow im 2)))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(pow re 2)
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(+ (* -1 (pow im 2)) (pow re 2))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* -1 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(* -3 (pow im 2))
(+ (* -3 (pow im 2)) (pow re 2))
(+ (* -3 (pow im 2)) (pow re 2))
(+ (* -3 (pow im 2)) (pow re 2))
(pow re 2)
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(pow re 2)
(+ (* -3 (pow im 2)) (pow re 2))
(+ (* -3 (pow im 2)) (pow re 2))
(+ (* -3 (pow im 2)) (pow re 2))
(* -3 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* -3 (pow im 2))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -3 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
(* -2 (pow im 2))
Outputs
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(pow re 2)
(*.f64 re re)
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow re 2)
(*.f64 re re)
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (pow im 2) (* 2 (pow im 2)))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (+ (pow im 2) (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (/ (pow im 2) (pow re 2))) (* 2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* -1 (pow re 2))
(*.f64 re (-.f64 #s(literal 0 binary64) re))
(- (* 2 (pow im 2)) (pow re 2))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(- (* 2 (pow im 2)) (pow re 2))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(- (* 2 (pow im 2)) (pow re 2))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* (pow im 2) (+ 2 (* -1 (/ (pow re 2) (pow im 2)))))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(+ (* -1 (pow re 2)) (* 2 (pow im 2)))
(-.f64 (*.f64 #s(literal 2 binary64) (*.f64 im im)) (*.f64 re re))
(* -1 (pow re 2))
(*.f64 re (-.f64 #s(literal 0 binary64) re))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* -1 (pow re 2))
(*.f64 re (-.f64 #s(literal 0 binary64) re))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (* 2 (/ (pow im 2) (pow re 2))) 1))
(*.f64 (*.f64 re re) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(* 2 (pow im 2))
(*.f64 #s(literal 2 binary64) (*.f64 im im))
(- (* -3 (pow im 2)) (* -2 (pow im 2)))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(- (+ (* -3 (pow im 2)) (pow re 2)) (* -2 (pow im 2)))
(-.f64 (*.f64 re re) (*.f64 im im))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(* (pow re 2) (- (+ 1 (* -3 (/ (pow im 2) (pow re 2)))) (* -2 (/ (pow im 2) (pow re 2)))))
(*.f64 re (*.f64 re (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 im im) re) re))))
(pow re 2)
(*.f64 re re)
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(+ (* -1 (pow im 2)) (pow re 2))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 1))
(-.f64 (*.f64 re re) (*.f64 im im))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(pow re 2)
(*.f64 re re)
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(* (pow re 2) (+ 1 (* -3 (/ (pow im 2) (pow re 2)))))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(pow re 2)
(*.f64 re re)
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(+ (* -3 (pow im 2)) (pow re 2))
(+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64)))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* (pow im 2) (- (/ (pow re 2) (pow im 2)) 3))
(*.f64 (*.f64 im im) (+.f64 (/.f64 (*.f64 re re) (*.f64 im im)) #s(literal -3 binary64)))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -3 (pow im 2))
(*.f64 (*.f64 im im) #s(literal -3 binary64))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))
(* -2 (pow im 2))
(*.f64 im (*.f64 im #s(literal -2 binary64)))

eval119.0ms (4.3%)

Compiler

Compiled 17091 to 1486 computations (91.3% saved)

prune114.0ms (4.2%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New113211133
Fresh000
Picked134
Done011
Total113351138
Accuracy
100.0%
Counts
1138 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.3%
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
94.9%
(-.f64 (*.f64 re re) (*.f64 im im))
76.6%
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
53.6%
(*.f64 re re)
54.7%
(neg.f64 (*.f64 im im))
Compiler

Compiled 52 to 30 computations (42.3% saved)

simplify5.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff-64
(neg.f64 (*.f64 im im))
cost-diff0
(*.f64 im im)
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036
1116
2156
3216
4356
5536
6626
7756
8996
0996
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(neg (* im im))
(* im im)
im
Outputs
(neg (* im im))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* im im)
(*.f64 im im)
im

localize20.0ms (0.7%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 im im)
accuracy100.0%
(neg.f64 (*.f64 im im))
Results
15.0ms256×0valid
Compiler

Compiled 11 to 5 computations (54.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 2.0ms (52.7% of total)
ival-neg: 1.0ms (26.4% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series0.0ms (0%)

Counts
2 → 24
Calls
Call 1
Inputs
#<alt (* im im)>
#<alt (neg (* im im))>
Outputs
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (pow im 2)>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
#<alt (* -1 (pow im 2))>
Calls

6 calls:

TimeVariablePointExpression
0.0ms
im
@-inf
(* im im)
0.0ms
im
@inf
(neg (* im im))
0.0ms
im
@0
(neg (* im im))
0.0ms
im
@0
(* im im)
0.0ms
im
@-inf
(neg (* im im))

rewrite13.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×+-lowering-+.f64
18×*-lowering-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035
1135
2205
3305
4535
5755
6875
71005
81245
01245
Stop Event
iter limit
saturated
Counts
2 → 23
Calls
Call 1
Inputs
(* im im)
(neg (* im im))
Outputs
(+.f64 (*.f64 im im) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 im im))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(-.f64 (*.f64 im im) #s(literal 0 binary64))
(fma.f64 im im #s(literal 0 binary64))
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(*.f64 im im)
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(fma.f64 im #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 (*.f64 im im) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 0 binary64) im (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im #s(literal 0 binary64))
(neg.f64 (*.f64 im im))
(*.f64 im (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im im) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 im im))
(*.f64 (-.f64 #s(literal 0 binary64) im) im)

simplify8.0ms (0.3%)

Algorithm
egg-herbie
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0584
1860
21860
32060
42360
53760
65560
76460
87760
910160
010160
Stop Event
iter limit
saturated
Counts
24 → 24
Calls
Call 1
Inputs
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(pow im 2)
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
(* -1 (pow im 2))
Outputs
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(pow im 2)
(*.f64 im im)
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(* -1 (pow im 2))
(-.f64 #s(literal 0 binary64) (*.f64 im im))

eval4.0ms (0.2%)

Compiler

Compiled 243 to 39 computations (84% saved)

prune5.0ms (0.2%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New47047
Fresh000
Picked011
Done044
Total47552
Accuracy
100.0%
Counts
52 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
76.3%
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
94.9%
(-.f64 (*.f64 re re) (*.f64 im im))
76.6%
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
53.6%
(*.f64 re re)
54.7%
(neg.f64 (*.f64 im im))
Compiler

Compiled 101 to 48 computations (52.5% saved)

regimes13.0ms (0.5%)

Counts
6 → 2
Calls
Call 1
Inputs
(*.f64 re re)
(neg.f64 (*.f64 im im))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
(-.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 im im) (-.f64 (*.f64 (*.f64 im im) #s(literal 2 binary64)) (*.f64 re re)))
(-.f64 (+.f64 (*.f64 re re) (*.f64 (*.f64 im im) #s(literal -3 binary64))) (*.f64 (*.f64 im im) #s(literal -2 binary64)))
Outputs
(-.f64 (*.f64 re re) (*.f64 im im))
(neg.f64 (*.f64 im im))
Calls

5 calls:

3.0ms
(-.f64 (*.f64 re re) (*.f64 im im))
3.0ms
re
3.0ms
im
2.0ms
(*.f64 im im)
2.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
97.3%2re
97.6%2im
97.6%2(-.f64 (*.f64 re re) (*.f64 im im))
97.3%2(*.f64 re re)
97.6%2(*.f64 im im)
Compiler

Compiled 25 to 15 computations (40% saved)

regimes7.0ms (0.3%)

Counts
3 → 2
Calls
Call 1
Inputs
(*.f64 re re)
(neg.f64 (*.f64 im im))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
Outputs
(neg.f64 (*.f64 im im))
(*.f64 re re)
Calls

4 calls:

2.0ms
re
2.0ms
im
2.0ms
(*.f64 im im)
2.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
83.5%2re
83.5%2(*.f64 re re)
81.9%2im
81.9%2(*.f64 im im)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes6.0ms (0.2%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 re re)
Outputs
(*.f64 re re)
Calls

3 calls:

3.0ms
im
1.0ms
re
1.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
53.6%1im
53.6%1re
53.6%1(*.f64 re re)
Compiler

Compiled 11 to 7 computations (36.4% saved)

bsearch10.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
10.0ms
5.978749015167091e+303
1.8173366313811802e+307
Results
6.0ms128×0valid
Compiler

Compiled 118 to 81 computations (31.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-sub: 1.0ms (54.2% of total)
ival-mult: 1.0ms (54.2% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch10.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
10.0ms
3.2780945627605203e+27
4.911722945844291e+31
Results
6.0ms128×0valid
Compiler

Compiled 102 to 73 computations (28.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-sub: 1.0ms (54.3% of total)
ival-mult: 1.0ms (54.3% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify8.0ms (0.3%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
12133
22633
32933
43033
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 im im) #s(literal 17999999999999999998039114376456216347651344438232275733880796879022611222629344232968210029232637423335228391286240943875841566654515691501851462816306922211711719782044802861424980850817372976047137059473401493851505898263937732639975369729520303573215587786116778968240433833201813024899629905743039168512 binary64)) (-.f64 (*.f64 re re) (*.f64 im im)) (neg.f64 (*.f64 im im)))
(if (<=.f64 (*.f64 re re) #s(literal 169999999999999990714012270592 binary64)) (neg.f64 (*.f64 im im)) (*.f64 re re))
(*.f64 re re)
Outputs
(if (<=.f64 (*.f64 im im) #s(literal 17999999999999999998039114376456216347651344438232275733880796879022611222629344232968210029232637423335228391286240943875841566654515691501851462816306922211711719782044802861424980850817372976047137059473401493851505898263937732639975369729520303573215587786116778968240433833201813024899629905743039168512 binary64)) (-.f64 (*.f64 re re) (*.f64 im im)) (neg.f64 (*.f64 im im)))
(if (<=.f64 (*.f64 im im) #s(literal 17999999999999999998039114376456216347651344438232275733880796879022611222629344232968210029232637423335228391286240943875841566654515691501851462816306922211711719782044802861424980850817372976047137059473401493851505898263937732639975369729520303573215587786116778968240433833201813024899629905743039168512 binary64)) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (-.f64 #s(literal 0 binary64) im)))
(if (<=.f64 (*.f64 re re) #s(literal 169999999999999990714012270592 binary64)) (neg.f64 (*.f64 im im)) (*.f64 re re))
(if (<=.f64 (*.f64 re re) #s(literal 169999999999999990714012270592 binary64)) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re re))
(*.f64 re re)

soundness648.0ms (23.7%)

Rules
2294×/-lowering-/.f32
2294×/-lowering-/.f64
1814×sum3-define
1646×sum4-define
1560×*-lowering-*.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01650
15849
221343
390941
4712341
0845741
017219
140153
2122153
3505153
41779153
53536153
67715153
08285153
Stop Event
done
iter limit
node limit
iter limit
node limit
Compiler

Compiled 73 to 38 computations (47.9% saved)

preprocess25.0ms (0.9%)

Remove

(abs im)

(abs re)

Compiler

Compiled 172 to 82 computations (52.3% saved)

end0.0ms (0%)

Profiling

Loading profile data...