Details

Time bar (total: 2.4s)

analyze1.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
100%0%0%1
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample1.7s (73%)

Results
847.0ms2188×body2048valid
385.0ms4280×body128valid
298.0ms1034×body1024valid
122.0ms517×body512valid
37.0ms237×body256valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify11.0ms (0.5%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
15×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11211
21611
32311
43211
54911
68611
712311
816611
920211
1022811
1123011
Stop Event
saturated
Counts
1 → 1

prune1.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
15.9b
Counts
2 → 1
Alt Table
StatusErrorProgram
15.9b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 24 to 18 computations (25% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.2b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))

series2.0ms (0.1%)

Counts
1 → 0
Calls

1 calls:

1.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))

rewrite36.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
828×expm1-log1p-u_binary64
688×prod-diff_binary64
80×add-sqr-sqrt_binary64
78×log1p-expm1-u_binary64
77×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
115611
2215411
Stop Event
node limit
Counts
1 → 50
Calls

1 calls:

35.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))

simplify5.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
50 → 50

prune38.0ms (1.6%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New48250
Fresh000
Picked101
Done000
Total49251
Error
0.0b
Counts
51 → 2
Alt Table
StatusErrorProgram
15.9b
(fma.f64 1 (atan.f64 (+.f64 N 1)) (neg.f64 (atan.f64 N)))
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
Compiler

Compiled 916 to 558 computations (39.1% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 N (+.f64 N 1))
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))

series4.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

2.0ms
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
2.0ms
(*.f64 N (+.f64 N 1))

rewrite39.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
817×log1p-expm1-u_binary64
817×expm1-log1p-u_binary64
605×prod-diff_binary64
82×add-sqr-sqrt_binary64
78×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0920
121816
2226116
Stop Event
node limit
Counts
2 → 41
Calls

2 calls:

38.0ms
(*.f64 N (+.f64 N 1))
38.0ms
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))

simplify52.0ms (2.2%)

Algorithm
egg-herbie
Rules
859×fma-def_binary64
466×sqr-pow_binary64
434×unswap-sqr_binary64
234×cube-prod_binary64
220×fabs-mul_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
09228
120186
235186
354186
4112186
5291186
6976186
72227186
82688186
92904186
103140186
113487186
123924186
134423186
Stop Event
node limit
Counts
65 → 47

prune38.0ms (1.6%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New43447
Fresh101
Picked011
Done000
Total44549
Error
0.0b
Counts
49 → 5
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) (pow.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2))
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
0.3b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)))
10.2b
(cbrt.f64 (pow.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))) 3))
0.7b
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
Compiler

Compiled 807 to 479 computations (40.6% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)))
0.6b
(pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)
12.9b
(cbrt.f64 (fma.f64 N N N))

series13.0ms (0.6%)

Counts
3 → 12
Calls

3 calls:

8.0ms
(pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)
4.0ms
(cbrt.f64 (fma.f64 N N N))
1.0ms
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)))

rewrite40.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
804×log1p-expm1-u_binary64
804×expm1-log1p-u_binary64
508×prod-diff_binary64
86×add-sqr-sqrt_binary64
83×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01123
124923
2226723
Stop Event
node limit
Counts
3 → 69
Calls

3 calls:

39.0ms
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)))
39.0ms
(pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)
39.0ms
(cbrt.f64 (fma.f64 N N N))

simplify11.0ms (0.5%)

Algorithm
egg-herbie
Rules
25×fma-def_binary64
+-commutative_binary64
distribute-lft-in_binary64
distribute-rgt1-in_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06132
111132
217132
326132
434132
538132
650132
763132
868132
969132
Stop Event
saturated
Counts
81 → 70

prune51.0ms (2.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New70070
Fresh033
Picked011
Done011
Total70575
Error
0.0b
Counts
75 → 5
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) (pow.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2))
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
0.3b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (pow.f64 (cbrt.f64 (fma.f64 N N N)) 3)))
10.2b
(cbrt.f64 (pow.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))) 3))
0.7b
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
Compiler

Compiled 1335 to 711 computations (46.7% saved)

localize8.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(atan2.f64 1 (+.f64 1 (fma.f64 N N N)))
0.7b
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
12.6b
(sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))))

series11.0ms (0.5%)

Counts
3 → 12
Calls

3 calls:

6.0ms
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
3.0ms
(sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))))
1.0ms
(atan2.f64 1 (+.f64 1 (fma.f64 N N N)))

rewrite37.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
683×log1p-expm1-u_binary64
683×expm1-log1p-u_binary64
247×prod-diff_binary64
131×log1p-udef_binary64
76×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0935
118635
2189235
Stop Event
node limit
Counts
3 → 65
Calls

3 calls:

36.0ms
(atan2.f64 1 (+.f64 1 (fma.f64 N N N)))
36.0ms
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
36.0ms
(sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))))

simplify11.0ms (0.4%)

Algorithm
egg-herbie
Rules
25×fma-def_binary64
+-commutative_binary64
distribute-lft-in_binary64
distribute-rgt1-in_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06132
111132
217132
326132
434132
538132
650132
763132
868132
969132
Stop Event
saturated
Counts
77 → 47

prune28.0ms (1.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New46147
Fresh022
Picked011
Done112
Total47552
Error
0.0b
Counts
52 → 5
Alt Table
StatusErrorProgram
1.4b
(*.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) (pow.f64 (cbrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2))
0.1b
(atan2.f64 (+.f64 1 (-.f64 N N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
0.7b
(*.f64 (pow.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))) 1/4) (*.f64 (pow.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))) 1/4) (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))))))
10.2b
(cbrt.f64 (pow.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N))) 3))
0.7b
(pow.f64 (sqrt.f64 (atan2.f64 1 (+.f64 1 (fma.f64 N N N)))) 2)
Compiler

Compiled 836 to 557 computations (33.4% saved)

regimes97.0ms (4.1%)

Accuracy

Total 0.0b remaining (11.1%)

Threshold costs 0.0b (11.1%)

Counts
60 → 1
Compiler

Compiled 1824 to 1344 computations (26.3% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
11115
Stop Event
saturated

end81.0ms (3.4%)

Compiler

Compiled 114 to 80 computations (29.8% saved)

Profiling

Loading profile data...