Details

Time bar (total: 2.3s)

analyze38.0ms (1.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
25%74.9%0.1%4
37.5%62.4%0.1%5
62.4%37.5%0.1%6
87.4%12.5%0.1%7
87.4%12.5%0.1%8
93.7%6.2%0.1%9
93.7%6.2%0.1%10
96.8%3.1%0.1%11
96.8%3.1%0.1%12
98.3%1.6%0.1%13
98.3%1.6%0.1%14
Compiler

Compiled 10 to 6 computations (40% saved)

sample747.0ms (32.4%)

Results
736.0ms8256×body128valid
Compiler

Compiled 20 to 12 computations (40% saved)

preprocess61.0ms (2.6%)

Algorithm
egg-herbie
Rules
660×fma-neg_binary64
445×div-sub_binary64
433×times-frac_binary64
346×fma-def_binary64
238×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0920
11420
22220
33420
45620
510720
615320
727520
869020
9193120
10313720
11359220
12380220
13391020
14396420
15396420
022
Stop Event
saturated
saturated
Compiler

Compiled 9 to 5 computations (44.4% saved)

simplify53.0ms (2.3%)

Algorithm
egg-herbie
Rules
516×fma-neg_binary64
439×fma-def_binary64
362×div-sub_binary64
361×times-frac_binary64
137×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
1910
21410
32110
43110
55410
69110
713410
821410
943910
10109910
11180410
12267410
13312110
14327710
15329910
16331910
17331910
Stop Event
saturated
Counts
1 → 1

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
Compiler

Compiled 27 to 15 computations (44.4% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))

series7.0ms (0.3%)

Counts
1 → 24
Calls

6 calls:

1.0ms
(/.f64 (+.f64 x y) (-.f64 x y))
x
0
1.0ms
(/.f64 (+.f64 x y) (-.f64 x y))
x
-inf
1.0ms
(/.f64 (+.f64 x y) (-.f64 x y))
y
inf
1.0ms
(/.f64 (+.f64 x y) (-.f64 x y))
y
-inf
1.0ms
(/.f64 (+.f64 x y) (-.f64 x y))
x
inf

rewrite42.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
828×log1p-expm1-u_binary64
828×expm1-log1p-u_binary64
552×prod-diff_binary64
74×add-sqr-sqrt_binary64
70×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
114010
2214310
Stop Event
node limit
Counts
1 → 35

simplify27.0ms (1.2%)

Algorithm
egg-herbie
Rules
823×associate-/l*_binary64
492×associate-/r*_binary64
361×associate-/r/_binary64
338×cancel-sign-sub-inv_binary64
194×associate-/l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
038417
1121399
2382339
31513327
Stop Event
node limit
Counts
59 → 49

prune38.0ms (1.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New46349
Fresh000
Picked011
Done000
Total46450
Error
0b
Counts
50 → 4
Alt Table
StatusErrorProgram
1.3b
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y))))
33.5b
(-.f64 -1 (*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x)))))
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
Compiler

Compiled 735 to 316 computations (57% saved)

localize6.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
0.0b
(/.f64 (-.f64 x y) (+.f64 x y))

series16.0ms (0.7%)

Counts
2 → 48
Calls

12 calls:

2.0ms
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
x
-inf
2.0ms
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
y
-inf
1.0ms
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
y
inf
1.0ms
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
x
0
1.0ms
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
y
0

rewrite130.0ms (5.6%)

Algorithm
batch-egg-rewrite
Rules
768×prod-diff_binary64
268×egg-rr
250×fma-def_binary64
167×expm1-udef_binary64
167×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0823
118520
2274220
Stop Event
node limit
Counts
2 → 268

simplify41.0ms (1.8%)

Algorithm
egg-herbie
Rules
757×cancel-sign-sub-inv_binary64
496×fma-neg_binary64
198×distribute-rgt-neg-in_binary64
198×distribute-neg-frac_binary64
194×associate-/l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
046831
1161807
2521705
32021666
Stop Event
node limit
Counts
316 → 294

prune222.0ms (9.6%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2940294
Fresh022
Picked011
Done011
Total2944298
Error
0b
Counts
298 → 4
Alt Table
StatusErrorProgram
1.3b
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y))))
33.5b
(-.f64 -1 (*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x)))))
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
Compiler

Compiled 12400 to 3795 computations (69.4% saved)

localize7.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y))))
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
2.1b
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))

series21.0ms (0.9%)

Counts
2 → 48
Calls

12 calls:

3.0ms
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))
x
-inf
3.0ms
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))
x
0
2.0ms
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))
y
inf
2.0ms
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))
y
-inf
2.0ms
(log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y)))
y
0

rewrite57.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
903×expm1-log1p-u_binary64
742×prod-diff_binary64
82×add-sqr-sqrt_binary64
80×log1p-expm1-u_binary64
77×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0822
116122
2234922
Stop Event
node limit
Counts
2 → 69

simplify48.0ms (2.1%)

Algorithm
egg-herbie
Rules
540×cancel-sign-sub-inv_binary64
427×associate-+l+_binary64
323×fma-neg_binary64
296×associate-+r+_binary64
262×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
089969
1272915
2871831
33596825
Stop Event
node limit
Counts
117 → 106

prune115.0ms (5%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1550155
Fresh011
Picked011
Done022
Total1554159
Error
0b
Counts
159 → 4
Alt Table
StatusErrorProgram
1.3b
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y))))
33.5b
(-.f64 -1 (*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x)))))
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
Compiler

Compiled 2388 to 1046 computations (56.2% saved)

localize10.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x)))
0.1b
(*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))
0.2b
(*.f64 (/.f64 x y) x)
2.3b
(*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))))

series81.0ms (3.5%)

Counts
4 → 96
Calls

24 calls:

16.0ms
(*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))
y
inf
6.0ms
(*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))))
x
inf
5.0ms
(*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))
y
-inf
5.0ms
(*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))))
x
-inf
4.0ms
(*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x))))
y
inf

rewrite77.0ms (3.3%)

Algorithm
batch-egg-rewrite
Rules
249×fma-neg_binary64
238×log1p-udef_binary64
237×expm1-udef_binary64
140×egg-rr
136×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01267
127563
2407763
Stop Event
node limit
Counts
4 → 140

simplify56.0ms (2.4%)

Algorithm
egg-herbie
Rules
972×fma-def_binary64
538×associate-/l*_binary64
296×associate-*l/_binary64
293×associate-/r*_binary64
267×unswap-sqr_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0231521
1671509
21881305
36951203
438411155
Stop Event
node limit
Counts
236 → 161

prune119.0ms (5.2%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1610161
Fresh000
Picked011
Done033
Total1614165
Error
0b
Counts
165 → 4
Alt Table
StatusErrorProgram
1.3b
(expm1.f64 (log1p.f64 (/.f64 (+.f64 x y) (-.f64 x y))))
33.5b
(-.f64 -1 (*.f64 (/.f64 2 y) (+.f64 x (*.f64 (+.f64 (/.f64 x y) 1) (*.f64 (/.f64 x y) x)))))
0.0b
(/.f64 (+.f64 x y) (-.f64 x y))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (+.f64 x y)) -1)
Compiler

Compiled 4249 to 2216 computations (47.8% saved)

regimes210.0ms (9.1%)

Accuracy

Total 0.0b remaining (51%)

Threshold costs 0.0b (51%)

Counts
80 → 1
Compiler

Compiled 3541 to 2418 computations (31.7% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11822
22222
32522
42622
Stop Event
saturated

end68.0ms (3%)

Stop Event
done
Compiler

Compiled 86 to 52 computations (39.5% saved)

Profiling

Loading profile data...