Details

Time bar (total: 2.6s)

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 (64.9%)

Results
841.0ms2175×body2048valid
388.0ms4252×body128valid
307.0ms1063×body1024valid
126.0ms520×body512valid
40.0ms246×body256valid
Compiler

Compiled 18 to 14 computations (22.2% saved)

preprocess16.0ms (0.6%)

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
011
Stop Event
saturated
saturated
Compiler

Compiled 8 to 6 computations (25% saved)

simplify11.0ms (0.4%)

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
16.5b
Counts
2 → 1
Alt Table
StatusErrorProgram
16.5b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
Compiler

Compiled 24 to 18 computations (25% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(atan.f64 (+.f64 N 1))
1.7b
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))

series3.0ms (0.1%)

Counts
2 → 0
Calls

6 calls:

0.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
N
inf
0.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
N
-inf
0.0ms
(-.f64 (atan.f64 (+.f64 N 1)) (atan.f64 N))
N
0
0.0ms
(atan.f64 (+.f64 N 1))
N
-inf
0.0ms
(atan.f64 (+.f64 N 1))
N
inf

rewrite39.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
828×log1p-expm1-u_binary64
828×expm1-log1p-u_binary64
84×add-sqr-sqrt_binary64
82×*-un-lft-identity_binary64
82×pow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
115617
2220217
Stop Event
node limit
Counts
2 → 56

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
56 → 56

prune52.0ms (2%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New52456
Fresh000
Picked101
Done000
Total53457
Error
15.2b
Counts
57 → 4
Alt Table
StatusErrorProgram
15.3b
(atan2.f64 (+.f64 N (-.f64 1 N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
33.0b
(-.f64 (pow.f64 (cbrt.f64 (atan.f64 (+.f64 N 1))) 3) (atan.f64 N))
16.5b
(-.f64 (log1p.f64 (expm1.f64 (atan.f64 (+.f64 N 1)))) (atan.f64 N))
32.1b
(-.f64 (cbrt.f64 (pow.f64 (atan.f64 (+.f64 N 1)) 3)) (atan.f64 N))
Compiler

Compiled 890 to 602 computations (32.4% saved)

localize7.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

series5.0ms (0.2%)

Counts
3 → 36
Calls

9 calls:

1.0ms
(*.f64 N (+.f64 N 1))
N
-inf
1.0ms
(atan2.f64 (+.f64 N (-.f64 1 N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
N
-inf
1.0ms
(*.f64 N (+.f64 N 1))
N
inf
1.0ms
(atan2.f64 (+.f64 N (-.f64 1 N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
N
inf
1.0ms
(atan2.f64 (+.f64 N (-.f64 1 N)) (+.f64 1 (*.f64 N (+.f64 N 1))))
N
0

rewrite55.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
616×fma-def_binary64
297×fma-neg_binary64
180×expm1-udef_binary64
180×log1p-udef_binary64
146×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0933
121029
2305929
Stop Event
node limit
Counts
3 → 162

simplify58.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
09240
120198
235198
354198
4112198
5291198
6976198
72227198
82688198
92904198
103140198
113487198
123924198
134423198
Stop Event
node limit
Counts
198 → 169

prune108.0ms (4.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1672169
Fresh213
Picked101
Done000
Total1703173
Error
0.4b
Counts
173 → 3
Alt Table
StatusErrorProgram
0.4b
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))
16.5b
(-.f64 (log1p.f64 (expm1.f64 (atan.f64 (+.f64 N 1)))) (atan.f64 N))
0.4b
(atan2.f64 1 (+.f64 N (+.f64 1 (pow.f64 N 2))))
Compiler

Compiled 3417 to 2199 computations (35.6% saved)

localize4.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 N N (+.f64 1 N))
0.4b
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))

series3.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

1.0ms
(fma.f64 N N (+.f64 1 N))
N
-inf
1.0ms
(fma.f64 N N (+.f64 1 N))
N
inf
0.0ms
(fma.f64 N N (+.f64 1 N))
N
0
0.0ms
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))
N
-inf
0.0ms
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))
N
0

rewrite32.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
597×pow1_binary64
553×add-log-exp_binary64
553×log1p-expm1-u_binary64
553×expm1-log1p-u_binary64
542×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0619
112119
2148219
Stop Event
node limit
Counts
2 → 39

simplify61.0ms (2.3%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
011219
124203
237203
355203
4113203
5293203
6949203
72202203
82663203
92879203
103115203
113462203
123897203
134396203
144977203
Stop Event
node limit
Counts
63 → 50

prune35.0ms (1.3%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New47350
Fresh202
Picked011
Done000
Total49453
Error
0.3b
Counts
53 → 4
Alt Table
StatusErrorProgram
0.7b
(atan2.f64 1 (*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)))
0.9b
(pow.f64 (sqrt.f64 (atan2.f64 1 (fma.f64 N N (+.f64 1 N)))) 2)
1.6b
(pow.f64 (cbrt.f64 (atan2.f64 1 (fma.f64 N N (+.f64 1 N)))) 3)
0.4b
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))
Compiler

Compiled 661 to 453 computations (31.5% saved)

localize7.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2))
0.2b
(pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)
0.4b
(atan2.f64 1 (*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)))
15.4b
(cbrt.f64 (fma.f64 N N (+.f64 1 N)))

series12.0ms (0.4%)

Counts
4 → 32
Calls

12 calls:

2.0ms
(pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)
N
-inf
2.0ms
(pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)
N
inf
1.0ms
(cbrt.f64 (fma.f64 N N (+.f64 1 N)))
N
-inf
1.0ms
(cbrt.f64 (fma.f64 N N (+.f64 1 N)))
N
inf
1.0ms
(*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2))
N
-inf

rewrite41.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
788×pow1_binary64
733×log1p-expm1-u_binary64
733×expm1-log1p-u_binary64
88×add-sqr-sqrt_binary64
83×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01042
120542
2210242
Stop Event
node limit
Counts
4 → 80

simplify32.0ms (1.2%)

Algorithm
egg-herbie
Rules
691×fma-def_binary64
564×cancel-sign-sub-inv_binary64
512×fma-neg_binary64
294×*-commutative_binary64
229×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033305
187281
2220277
3770265
42650265
54871265
Stop Event
node limit
Counts
112 → 103

prune119.0ms (4.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1303133
Fresh022
Picked011
Done011
Total1307137
Error
0.3b
Counts
137 → 7
Alt Table
StatusErrorProgram
0.4b
(atan2.f64 1 (fma.f64 N N (+.f64 1 N)))
0.8b
(atan2.f64 1 (*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 N N (+.f64 N 1)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 N N (+.f64 N 1)))) (cbrt.f64 (fma.f64 N N (+.f64 N 1)))))))
0.7b
(atan2.f64 1 (*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)))
0.9b
(pow.f64 (sqrt.f64 (atan2.f64 1 (fma.f64 N N (+.f64 1 N)))) 2)
1.6b
(pow.f64 (cbrt.f64 (atan2.f64 1 (fma.f64 N N (+.f64 1 N)))) 3)
0.7b
(atan2.f64 1 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 N N (+.f64 N 1)))) 3) (pow.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) 2)))
0.9b
(atan2.f64 1 (*.f64 (cbrt.f64 (fma.f64 N N (+.f64 1 N))) (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 N N (+.f64 N 1)))) 3) 2)))
Compiler

Compiled 2614 to 1872 computations (28.4% saved)

regimes103.0ms (3.9%)

Accuracy

Total 0.0b remaining (9.9%)

Threshold costs 0.0b (9.9%)

Counts
71 → 1
Compiler

Compiled 2120 to 1609 computations (24.1% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0611
1911
Stop Event
saturated

end107.0ms (4%)

Stop Event
fuel
Compiler

Compiled 155 to 110 computations (29% saved)

Profiling

Loading profile data...