math.square on complex, real part

Time bar (total: 2.3s)

analyze1.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)

sample581.0ms (25%)

Results
411.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 200.0ms
ival-mult: 142.0ms (71.1% of total)
ival-sub: 48.0ms (24% of total)
const: 7.0ms (3.5% of total)
backward-pass: 3.0ms (1.5% of total)
Bogosity

preprocess186.0ms (8%)

Algorithm
egg-herbie
Rules
2632×sum4-define
2434×sum3-define
1966×fmsub-define
1962×fnmsub-define
1952×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01439
16336
218936
352536
4148336
5395236
6615136
056
1156
2276
3576
41376
55636
623346
741276
878636
080466
Stop Event
iter limit
node limit
node limit
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 (* im im))
(- (* (neg re) (neg re)) (* im im))
(fmsub re re (* im im))
(- (* re re) (* (neg im) (neg im)))
(fmsub re re (* im im))
(neg (- (* (neg re) (neg re)) (* im im)))
(fmsub im im (* re re))
(neg (- (* re re) (* (neg im) (neg im))))
(fmsub im im (* re re))
(- (* im im) (* re re))
(fmsub im im (* re re))
Symmetry

(abs re)

(abs im)

explain49.0ms (2.1%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
160-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
30.0ms512×0valid
Compiler

Compiled 45 to 17 computations (62.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 8.0ms (69.4% of total)
ival-sub: 2.0ms (17.4% of total)
const: 1.0ms (8.7% 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
93.8%
(-.f64 (*.f64 re re) (*.f64 im im))
Compiler

Compiled 9 to 5 computations (44.4% saved)

simplify119.0ms (5.1%)

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
2632×sum4-define
1446×sum3-define
1442×fmsub-define
1390×fma-define
1298×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0514
11514
22714
35714
413714
556314
6233414
7412714
8786314
0804614
Stop Event
iter limit
node limit
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

localize21.0ms (0.9%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 re re)
accuracy100.0%
(*.f64 im im)
accuracy94.5%
(-.f64 (*.f64 re re) (*.f64 im im))
Results
15.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: 4.0ms (70.8% of total)
ival-sub: 1.0ms (17.7% 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))

rewrite323.0ms (13.9%)

Algorithm
batch-egg-rewrite
Rules
2928×*-lowering-*.f32
2928×*-lowering-*.f64
1848×sum3-define
1554×fma-lowering-fma.f32
1554×fma-lowering-fma.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0512
13312
225112
3324112
0854312
Stop Event
iter limit
node limit
Counts
3 → 224
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 (*.f64 re re) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(+.f64 (*.f64 re re) (neg.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (*.f64 re re) (+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(+.f64 (*.f64 re re) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (*.f64 re re) (+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (+.f64 (*.f64 im im) (-.f64 (*.f64 re re) (*.f64 im im))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(+.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 re re))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (-.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 (+.f64 re im) re) (*.f64 (+.f64 re im) (-.f64 #s(literal 0 binary64) im)))
(+.f64 (*.f64 (-.f64 re im) re) (*.f64 (-.f64 re im) im))
(+.f64 (*.f64 (-.f64 re im) im) (*.f64 (-.f64 re im) re))
(+.f64 (*.f64 re (+.f64 re im)) (*.f64 (-.f64 #s(literal 0 binary64) im) (+.f64 re im)))
(+.f64 (*.f64 re (-.f64 re im)) (*.f64 im (-.f64 re im)))
(+.f64 (*.f64 im (-.f64 re im)) (*.f64 re (-.f64 re im)))
(+.f64 (+.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 im im))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))) #s(literal -1 binary64)))
(-.f64 (*.f64 re re) (*.f64 im im))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(-.f64 (*.f64 re re) (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(-.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(-.f64 (*.f64 re re) (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(-.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(-.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(-.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(-.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))))
(-.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(-.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 im im) (*.f64 re re)))
(-.f64 (/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (/.f64 (*.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)) (*.f64 im im))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(-.f64 (+.f64 (*.f64 re re) #s(literal 0 binary64)) (*.f64 im im))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im)))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))))
(fma.f64 re re (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 re re (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 re re (neg.f64 (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 re re (neg.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 re re (neg.f64 (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 re (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 re (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 re (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re re) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re re) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) (*.f64 re re))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im (*.f64 re re))
(fma.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 (*.f64 re re) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 (*.f64 re re) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re (*.f64 re re))) (/.f64 (*.f64 re re) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(fma.f64 (+.f64 re im) (-.f64 re im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (+.f64 re im) (-.f64 re im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(fma.f64 (-.f64 re im) (+.f64 re im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (-.f64 re im) (+.f64 re im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 re (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 re (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 re (+.f64 (*.f64 re re) (*.f64 im im))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (*.f64 re (*.f64 re re)) (/.f64 (*.f64 re (*.f64 re re)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) (*.f64 re re))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (neg.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (neg.f64 (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (neg.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)) (neg.f64 (-.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 (*.f64 re re) (*.f64 im im)) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 (*.f64 re re) (*.f64 im im)) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 (*.f64 re re) (*.f64 im im)) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (+.f64 re im)) (*.f64 im (-.f64 im re)))) (neg.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (+.f64 re im)) (*.f64 im (-.f64 im re)))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (+.f64 re im)) (*.f64 im (-.f64 im re)))) (neg.f64 (-.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re (*.f64 re (*.f64 re re)))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re (*.f64 re (*.f64 re re)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re (*.f64 re (*.f64 re re)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (-.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (-.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(fma.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (-.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(neg.f64 (/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(neg.f64 (/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 re (*.f64 re (*.f64 re re)))) (*.f64 im (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))
(/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)))))
(/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im (-.f64 im re))) (+.f64 (*.f64 re re) (*.f64 im (+.f64 re im)))))
(/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 re (*.f64 re (-.f64 #s(literal 0 binary64) (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (neg.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re))))))
(/.f64 (+.f64 (neg.f64 (*.f64 re (*.f64 re (*.f64 re re)))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.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 im im)) (-.f64 (*.f64 re re) (*.f64 im im))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.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 im im)) (-.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))))))
(/.f64 (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (*.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (+.f64 (*.f64 re re) (*.f64 im im)))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))))) (+.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im)))) (*.f64 (-.f64 re im) (+.f64 (*.f64 re re) (*.f64 im (+.f64 re im)))))
(/.f64 (*.f64 (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re))) (-.f64 (*.f64 re re) (*.f64 im im))) (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re)))) (*.f64 (+.f64 re im) (+.f64 (*.f64 re re) (*.f64 im (-.f64 im re)))))
(/.f64 (*.f64 (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im))) (-.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re)))) (*.f64 (+.f64 (*.f64 re re) (*.f64 im (+.f64 re im))) (+.f64 (*.f64 re re) (*.f64 im (-.f64 im re)))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 re (*.f64 re (*.f64 re re)))) (*.f64 im (*.f64 im (*.f64 im im))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))))
(/.f64 (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.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 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) (neg.f64 (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (pow.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal 3 binary64))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (-.f64 (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (*.f64 (*.f64 re re) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 8 binary64) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (pow.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal 3 binary64))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (*.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (+.f64 (*.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (*.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))))
(/.f64 (-.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 re (*.f64 re (*.f64 re re)))) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)))
(/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) (-.f64 (*.f64 re re) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))) (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im))))
(/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) (+.f64 (*.f64 re re) (-.f64 (*.f64 im im) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (*.f64 (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))) (+.f64 (/.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (/.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (/.f64 (*.f64 re (*.f64 re (*.f64 re re))) (+.f64 (*.f64 re re) (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re re) (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 re im)) (+.f64 re im))
(/.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 re im)) (-.f64 re im))
(/.f64 (*.f64 (-.f64 re im) (-.f64 (*.f64 re re) (*.f64 im im))) (-.f64 re im))
(/.f64 (*.f64 (+.f64 re im) (-.f64 (*.f64 re re) (*.f64 im im))) (+.f64 re im))
(/.f64 (*.f64 (+.f64 re im) (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 re re) (*.f64 im (+.f64 re im))))
(/.f64 (*.f64 (-.f64 re im) (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re)))) (+.f64 (*.f64 re re) (*.f64 im (-.f64 im re))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (+.f64 (*.f64 im (*.f64 im im)) (*.f64 re (*.f64 re re))) (-.f64 re im)) (+.f64 (*.f64 re re) (*.f64 im (-.f64 im re))))
(/.f64 (*.f64 (-.f64 (*.f64 re (*.f64 re re)) (*.f64 im (*.f64 im im))) (+.f64 re im)) (+.f64 (*.f64 re re) (*.f64 im (+.f64 re im))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re)))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.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 im im)) (-.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im))))) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(*.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 re re))))))
(*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (/.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))
(*.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))))
(*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))))
(*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (/.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 re re) (*.f64 im im))))
(*.f64 (+.f64 re im) (-.f64 re im))
(*.f64 (-.f64 re im) (+.f64 re im))
(*.f64 (+.f64 (neg.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))
(*.f64 (+.f64 (neg.f64 (*.f64 re (*.f64 re (*.f64 re re)))) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 re re) (*.f64 im im)))))
(*.f64 (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (-.f64 (*.f64 re re) (*.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 im im)) (-.f64 (*.f64 re re) (*.f64 im im)))))))
(*.f64 #s(literal 1 binary64) (-.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re re) (*.f64 im im))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 #s(literal 0 binary64) (*.f64 im im)))))
(*.f64 (/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 (*.f64 re re) (*.f64 im im)))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))))) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (-.f64 (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))) (*.f64 re (*.f64 re (*.f64 re re)))))))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im im) (*.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im)))))))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))))
(*.f64 (/.f64 (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (+.f64 re im)) (*.f64 im (-.f64 im re)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 re re) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 re re) (*.f64 im im)) (*.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (-.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 re (*.f64 re (*.f64 re re))) (*.f64 im (*.f64 im (+.f64 (*.f64 re re) (*.f64 im im))))) (+.f64 (*.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re)))) (*.f64 (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 re (*.f64 re re)) (*.f64 re (*.f64 re re))) (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 re)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 re)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 re))) #s(literal 2 binary64)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(*.f64 (pow.f64 (pow.f64 re #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 re #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (exp.f64 (log.f64 re)) #s(literal 1 binary64)) (pow.f64 (exp.f64 (log.f64 re)) #s(literal 1 binary64)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 im))) #s(literal 2 binary64)))
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(*.f64 im im)
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 (pow.f64 (pow.f64 im #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 im #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (exp.f64 (log.f64 im)) #s(literal 1 binary64)) (pow.f64 (exp.f64 (log.f64 im)) #s(literal 1 binary64)))

simplify109.0ms (4.7%)

Algorithm
egg-herbie
Rules
2156×*-lowering-*.f32
2156×*-lowering-*.f64
1684×sum4-define
1286×sum3-define
1232×sum5-define
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017219
140201
2123201
3516201
41905201
53924201
08187201
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)

eval36.0ms (1.6%)

Compiler

Compiled 9916 to 541 computations (94.5% saved)

prune28.0ms (1.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2702272
Fresh000
Picked011
Done000
Total2703273
Accuracy
100.0%
Counts
273 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(-.f64 (*.f64 re re) (*.f64 im im))
53.5%
(-.f64 #s(literal 0 binary64) (*.f64 im im))
56.7%
(*.f64 re re)
Compiler

Compiled 21 to 13 computations (38.1% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 im im)
cost-diff0
(-.f64 #s(literal 0 binary64) (*.f64 im im))
cost-diff0
(*.f64 re re)
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
0613
11113
21813
33013
44213
56013
66913
77613
810013
010013
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* re re)
re
(- 0 (* im im))
0
(* im im)
im
Outputs
(* re re)
(*.f64 re re)
re
(- 0 (* im im))
(-.f64 #s(literal 0 binary64) (*.f64 im im))
0
#s(literal 0 binary64)
(* im im)
(*.f64 im im)
im

localize23.0ms (1%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(-.f64 #s(literal 0 binary64) (*.f64 im im))
accuracy100.0%
(*.f64 im im)
accuracy100.0%
(*.f64 re re)
Results
17.0ms256×0valid
Compiler

Compiled 17 to 7 computations (58.8% saved)

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

series0.0ms (0%)

Counts
3 → 36
Calls
Call 1
Inputs
#<alt (* re re)>
#<alt (- 0 (* im im))>
#<alt (* im im)>
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)>
Calls

9 calls:

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

rewrite75.0ms (3.2%)

Algorithm
batch-egg-rewrite
Rules
596×/-lowering-/.f32
596×/-lowering-/.f64
582×*-lowering-*.f32
582×*-lowering-*.f64
238×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
12710
219510
0193310
Stop Event
iter limit
iter limit
node limit
Counts
3 → 134
Calls
Call 1
Inputs
(* re re)
(- 0 (* im im))
(* im im)
Outputs
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 re)))
(pow.f64 re #s(literal 2 binary64))
(pow.f64 (*.f64 re re) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 re)) #s(literal 2 binary64))
(*.f64 re re)
(*.f64 (exp.f64 (log.f64 re)) (exp.f64 (log.f64 re)))
(+.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))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal 0 binary64))
(fma.f64 im (-.f64 #s(literal 0 binary64) im) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.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))
(fma.f64 #s(literal -1 binary64) (*.f64 im im) #s(literal 0 binary64))
(neg.f64 (*.f64 im im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im im))
(/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal 1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (*.f64 im im))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) #s(literal 1 binary64)) (*.f64 (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im im)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) #s(literal 1 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) (-.f64 #s(literal 0 binary64) im))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (/.f64 #s(literal 1 binary64) (*.f64 im im))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) im) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) im) (*.f64 im (*.f64 im im)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im im))) im)
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) im)) im)
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1 binary64)) (*.f64 im im))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal -1 binary64))
(*.f64 im (-.f64 #s(literal 0 binary64) im))
(*.f64 (*.f64 im im) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(*.f64 (-.f64 #s(literal 0 binary64) im) im)
(*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 #s(literal -1 binary64) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(+.f64 #s(literal 0 binary64) (*.f64 im im))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) im)) im))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 im im)))
(+.f64 (*.f64 im im) #s(literal 0 binary64))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(-.f64 (*.f64 im im) #s(literal 0 binary64))
(fma.f64 im im #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) im) (-.f64 #s(literal 0 binary64) im))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) im)) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal -1 binary64)) (*.f64 im im))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) im) (*.f64 im (*.f64 im im)))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im im)) (*.f64 im im))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))) im)
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 im)) #s(literal 2 binary64))
(*.f64 im im)
(*.f64 im (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im im)))
(*.f64 (*.f64 im im) (/.f64 (*.f64 im im) (*.f64 im im)))
(*.f64 (*.f64 im im) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 im (*.f64 im im)) (/.f64 im (*.f64 im im)))
(*.f64 (*.f64 im (*.f64 im im)) (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (exp.f64 (log.f64 im)) (exp.f64 (log.f64 im)))
(*.f64 (/.f64 im im) (/.f64 (*.f64 im (*.f64 im im)) im))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) im) (/.f64 im im))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) im) (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im im) im) (/.f64 (*.f64 im im) im))
(*.f64 (/.f64 (*.f64 im im) im) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im im) im))
(*.f64 (/.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im im) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im im)) im))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im im)) (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im im)))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im))))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))

simplify8.0ms (0.4%)

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: 0 (0.0ms)

IterNodesCost
07120
111120
220120
322120
425120
539120
657120
766120
879120
9103120
0103120
Stop Event
iter limit
saturated
Counts
36 → 36
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)
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)

eval16.0ms (0.7%)

Compiler

Compiled 2918 to 288 computations (90.1% saved)

prune17.0ms (0.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1691170
Fresh000
Picked112
Done011
Total1703173
Accuracy
100.0%
Counts
173 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(-.f64 (*.f64 re re) (*.f64 im im))
56.7%
(*.f64 re re)
53.5%
(neg.f64 (*.f64 im im))
Compiler

Compiled 20 to 12 computations (40% 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
038
1108
2148
3208
4348
5528
6618
7748
8988
0988
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

localize16.0ms (0.7%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 im im)
accuracy100.0%
(neg.f64 (*.f64 im im))
Results
11.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 (51.7% of total)
ival-neg: 1.0ms (25.8% 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
@0
(* im im)
0.0ms
im
@inf
(neg (* im im))
0.0ms
im
@-inf
(neg (* im im))
0.0ms
im
@0
(neg (* im im))
0.0ms
im
@inf
(* im im)

rewrite95.0ms (4.1%)

Algorithm
batch-egg-rewrite
Rules
668×*-lowering-*.f32
668×*-lowering-*.f64
646×/-lowering-/.f32
646×/-lowering-/.f64
238×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037
1127
2367
32107
021737
Stop Event
iter limit
iter limit
node limit
Counts
2 → 138
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))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) im) (-.f64 #s(literal 0 binary64) im)))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 im im)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) im)) im))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 im)) #s(literal 1 binary64)))
(exp.f64 (-.f64 (*.f64 (log.f64 im) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 im))))
(exp.f64 (-.f64 (*.f64 (log.f64 im) #s(literal 6 binary64)) (*.f64 (log.f64 im) #s(literal 4 binary64))))
(-.f64 (*.f64 im im) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(fma.f64 im im #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im im))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) im) (-.f64 #s(literal 0 binary64) im))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal -1 binary64)) (*.f64 im im))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) im)) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) im) (*.f64 im (*.f64 im im)))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im im)) (*.f64 im im))
(/.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im im))) im)
(pow.f64 im #s(literal 2 binary64))
(pow.f64 (*.f64 im im) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 im))
(*.f64 im im)
(*.f64 (*.f64 im im) (/.f64 (*.f64 im im) (*.f64 im im)))
(*.f64 (*.f64 im im) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (*.f64 im (*.f64 im im)) (/.f64 im (*.f64 im im)))
(*.f64 (*.f64 im (*.f64 im im)) (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) im))
(*.f64 (/.f64 im im) (/.f64 (*.f64 im (*.f64 im im)) im))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) im) (/.f64 im im))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) im) (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im im) im) (/.f64 (*.f64 im im) im))
(*.f64 (/.f64 (*.f64 im im) im) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im im) im))
(*.f64 (/.f64 (*.f64 im im) (*.f64 im im)) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im im) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) (/.f64 (*.f64 im im) (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im im)) (*.f64 im (*.f64 im im))) (/.f64 (*.f64 im (*.f64 im im)) im))
(*.f64 (*.f64 im (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.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 (-.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 -1 binary64) (*.f64 im im) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) im) im #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im im)) #s(literal 0 binary64))
(neg.f64 (*.f64 im im))
(/.f64 (*.f64 im im) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im im))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im im) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im im))) im)
(/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) #s(literal 1 binary64)) (*.f64 im im))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 im im)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) #s(literal 1 binary64)) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) im) (-.f64 #s(literal 0 binary64) im))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im im)) im) im)
(/.f64 (*.f64 im (-.f64 #s(literal 0 binary64) (*.f64 im im))) im)
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (/.f64 #s(literal 1 binary64) (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) im) im)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) im) (*.f64 im (*.f64 im im)))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal -1 binary64)) (*.f64 im im))
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) im)) im)
(/.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) #s(literal -1 binary64))
(*.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)
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (*.f64 im im)))
(*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 im im)) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (-.f64 #s(literal 0 binary64) im)))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 im im))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) im) (sqrt.f64 im)) (sqrt.f64 im))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im im))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))) (*.f64 im (*.f64 im (*.f64 im im))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))) (-.f64 #s(literal 0 binary64) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 (*.f64 im im) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im))))))) (*.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))))
(*.f64 (/.f64 (*.f64 im (*.f64 im (*.f64 im im))) (*.f64 im (*.f64 im (*.f64 im im)))) (-.f64 #s(literal 0 binary64) (*.f64 im im)))

simplify9.0ms (0.4%)

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: 0 (0.0ms)

IterNodesCost
0584
1884
21784
31984
42284
53684
65484
76384
87684
910084
010084
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))

eval13.0ms (0.6%)

Compiler

Compiled 2836 to 306 computations (89.2% saved)

prune19.0ms (0.8%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1620162
Fresh000
Picked011
Done022
Total1623165
Accuracy
100.0%
Counts
165 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.8%
(-.f64 (*.f64 re re) (*.f64 im im))
56.7%
(*.f64 re re)
53.5%
(neg.f64 (*.f64 im im))
Compiler

Compiled 41 to 20 computations (51.2% saved)

regimes10.0ms (0.4%)

Counts
4 → 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))
Outputs
(-.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
Calls

5 calls:

2.0ms
im
2.0ms
re
2.0ms
(-.f64 (*.f64 re re) (*.f64 im im))
2.0ms
(*.f64 im im)
2.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
97.7%2re
96.1%2im
97.7%2(-.f64 (*.f64 re re) (*.f64 im im))
97.7%2(*.f64 re re)
96.1%2(*.f64 im im)
Compiler

Compiled 25 to 15 computations (40% saved)

regimes12.0ms (0.5%)

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:

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

Compiled 16 to 10 computations (37.5% saved)

regimes4.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:

1.0ms
re
1.0ms
im
1.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
56.7%1im
56.7%1re
56.7%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
9.0ms
2.3127344399978798e+288
1.199639578847486e+291
Results
5.0ms128×0valid
Compiler

Compiled 110 to 73 computations (33.6% saved)

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

bsearch11.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
10.0ms
1.4450833763198783e+134
2.6431872096658047e+135
Results
4.0ms112×0valid
Compiler

Compiled 91 to 65 computations (28.6% saved)

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

simplify7.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
01232
12132
22632
32932
43032
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 re re) #s(literal 1180000000000000055527688366629766334179889254791937122396273184084169747227795926166145782735708264841581700046008955413517596129071090276894131287546449612314596158614506153662375106519603694760831583109764451065441121906841885136499142169109934524306574816017594137816649402012285968318464 binary64)) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re))
(if (<=.f64 (*.f64 re re) #s(literal 530000000000000016889578143661229103931932825769991823755584957351291211090225766330191172879327289796564166879663324569503065641582592 binary64)) (neg.f64 (*.f64 im im)) (*.f64 re re))
(*.f64 re re)
Outputs
(if (<=.f64 (*.f64 re re) #s(literal 1180000000000000055527688366629766334179889254791937122396273184084169747227795926166145782735708264841581700046008955413517596129071090276894131287546449612314596158614506153662375106519603694760831583109764451065441121906841885136499142169109934524306574816017594137816649402012285968318464 binary64)) (-.f64 (*.f64 re re) (*.f64 im im)) (*.f64 re re))
(if (<=.f64 (*.f64 re re) #s(literal 530000000000000016889578143661229103931932825769991823755584957351291211090225766330191172879327289796564166879663324569503065641582592 binary64)) (neg.f64 (*.f64 im im)) (*.f64 re re))
(if (<=.f64 (*.f64 re re) #s(literal 530000000000000016889578143661229103931932825769991823755584957351291211090225766330191172879327289796564166879663324569503065641582592 binary64)) (*.f64 im (-.f64 #s(literal 0 binary64) im)) (*.f64 re re))
(*.f64 re re)

soundness487.0ms (21%)

Rules
2156×*-lowering-*.f32
2156×*-lowering-*.f64
1684×sum4-define
1286×sum3-define
1232×sum5-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
12710
219510
0193310
017219
140201
2123201
3516201
41905201
53924201
08187201
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 63 to 32 computations (49.2% saved)

preprocess24.0ms (1%)

Remove

(abs im)

(abs re)

Compiler

Compiled 160 to 70 computations (56.3% saved)

end0.0ms (0%)

Profiling

Loading profile data...