Details

Time bar (total: 2.4s)

analyze166.0ms (6.9%)

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
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
93.7%6.2%0.1%7
96.8%3.1%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 22 to 13 computations (40.9% saved)

sample20.0ms (0.8%)

Algorithm
intervals
Results
13.0ms256×body128valid
Compiler

Compiled 45 to 27 computations (40% saved)

simplify109.0ms (4.5%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
549×sub-neg_binary64
460×distribute-neg-frac_binary64
455×cancel-sign-sub-inv_binary64
430×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
12324
25224
310524
419924
533024
644224
760324
890124
9230424
10338624
11395624
12445424
13473524
14523824

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
31.7b
Counts
3 → 1
Alt Table
StatusErrorProgram
31.7b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
Compiler

Compiled 80 to 44 computations (45% saved)

localize7.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
2.1b
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
31.1b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

series42.0ms (1.7%)

Counts
3 → 72
Calls

3 calls:

19.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
14.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
9.0ms
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))

rewrite16.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-log-exp_binary64
Counts
3 → 64
Calls

3 calls:

6.0ms
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
3.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
3.0ms
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))

simplify92.0ms (3.8%)

Algorithm
egg-herbie
Rules
485×fma-def_binary64
328×times-frac_binary64
299×associate-/l*_binary64
294×fma-neg_binary64
248×associate-/r*_binary64
Counts
136 → 136
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01362837
13562636
212542600
345602600
450372600

prune93.0ms (3.8%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New1306136
Fresh000
Picked101
Done000
Total1316137
Error
0.6b
Counts
137 → 6
Alt Table
StatusErrorProgram
31.7b
(cbrt.f64 (pow.f64 (/.f64 (fma.f64 x x (*.f64 (*.f64 y y) -4)) (fma.f64 x x (*.f64 (*.f64 y y) 4))) 3))
31.7b
(expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))))
31.8b
(/.f64 (fma.f64 x x (*.f64 (*.f64 y y) -4)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
32.5b
1
34.7b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
31.8b
-1
Compiler

Compiled 4051 to 2127 computations (47.5% saved)

localize10.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
2.1b
(-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))
2.5b
(log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))
31.1b
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))

series48.0ms (2%)

Counts
1 → 24
Calls

1 calls:

48.0ms
(log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
expm1-log1p-u_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
1 → 11
Calls

1 calls:

0.0ms
(log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y))))

simplify56.0ms (2.3%)

Algorithm
egg-herbie
Rules
537×associate-*l/_binary64
409×fma-neg_binary64
353×associate-/r/_binary64
228×sub-neg_binary64
193×distribute-rgt-neg-in_binary64
Counts
35 → 46
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0851145
12281046
26111014
323041012
453211012

prune345.0ms (14.2%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1811182
Fresh145
Picked101
Done000
Total1835188
Error
0.6b
Counts
188 → 5
Alt Table
StatusErrorProgram
31.6b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))))
31.8b
(/.f64 (fma.f64 x x (*.f64 (*.f64 y y) -4)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
32.5b
1
34.7b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
31.8b
-1
Compiler

Compiled 5537 to 3171 computations (42.7% saved)

localize12.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 y (*.f64 y 4) (*.f64 x x))
1.5b
(fma.f64 y (*.f64 y -4) (*.f64 x x))
2.5b
(log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x))))
31.1b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))

series76.0ms (3.1%)

Counts
4 → 96
Calls

4 calls:

41.0ms
(log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x))))
20.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))
7.0ms
(fma.f64 y (*.f64 y 4) (*.f64 x x))
7.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))

rewrite6.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
12×*-un-lft-identity_binary64
12×add-sqr-sqrt_binary64
12×add-cube-cbrt_binary64
times-frac_binary64
add-cbrt-cube_binary64
Counts
4 → 60
Calls

4 calls:

2.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))
0.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))
0.0ms
(log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x))))
0.0ms
(fma.f64 y (*.f64 y 4) (*.f64 x x))

simplify156.0ms (6.4%)

Algorithm
egg-herbie
Rules
723×fma-neg_binary64
282×fma-def_binary64
220×times-frac_binary64
200×cancel-sign-sub-inv_binary64
171×associate-/l*_binary64
Counts
156 → 152
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01633634
13873353
210563301
338633289
449533289
550003289
649443289

prune98.0ms (4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1520152
Fresh044
Picked011
Done000
Total1525157
Error
0.6b
Counts
157 → 5
Alt Table
StatusErrorProgram
31.6b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))))
31.8b
(/.f64 (fma.f64 x x (*.f64 (*.f64 y y) -4)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
32.5b
1
34.7b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
31.8b
-1
Compiler

Compiled 4267 to 2336 computations (45.3% saved)

localize0.0ms (0%)

prune3.0ms (0.1%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done011
Total055
Error
0.6b
Counts
5 → 5
Alt Table
StatusErrorProgram
31.6b
(expm1.f64 (log1p.f64 (/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 y (*.f64 y 4) (*.f64 x x)))))
31.8b
(/.f64 (fma.f64 x x (*.f64 (*.f64 y y) -4)) (+.f64 (*.f64 x x) (*.f64 (*.f64 y 4) y)))
32.5b
1
34.7b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
31.8b
-1
Compiler

Compiled 59 to 38 computations (35.6% saved)

regimes351.0ms (14.5%)

Accuracy

Total 3.9b remaining (90.5%)

Threshold costs 0b (0%)

Counts
18 → 3
Compiler

Compiled 1978 to 1267 computations (35.9% saved)

bsearch1.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02344
12644
22544

end1.0ms (0%)

Compiler

Compiled 32 to 24 computations (25% saved)

sample710.0ms (29.3%)

Algorithm
intervals
Results
436.0ms8000×body128valid
Compiler

Compiled 115 to 77 computations (33% saved)

Profiling

Loading profile data...