Details

Time bar (total: 8.2s)

analyze582.0ms (7.1%)

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
0%74.9%25.1%6
6.2%68.6%25.1%7
9.4%65.5%25.1%8
14%35.9%50.1%9
21.1%28.9%50.1%10
24.6%25.4%50.1%11
28.7%21.3%50.1%12
33.4%16.5%50.1%13
35.8%14.1%50.1%14
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.3s (15.6%)

Results
1.1s8255×body128valid
3.0ms26×body128invalid
0.0msbody512valid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify120.0ms (1.5%)

Algorithm
egg-herbie
Rules
782×fma-neg_binary64
610×unsub-neg_binary64
567×distribute-rgt-in_binary64
442×sub-neg_binary64
412×fma-def_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01118
12518
27516
325316
465416
5176716
6216716
7228416
8237516
9237416
10239116
11270116
12341716
13487716
14471316
15496716

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 56 to 35 computations (37.5% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series331.0ms (4.1%)

Counts
4 → 96
Calls

4 calls:

154.0ms
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
86.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
81.0ms
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))
10.0ms
(*.f64 (+.f64 y 1/2) (log.f64 y))

rewrite27.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
40×*-un-lft-identity_binary64
27×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
20×add-log-exp_binary64
18×prod-diff_binary64
Counts
4 → 119
Calls

4 calls:

7.0ms
(*.f64 (+.f64 y 1/2) (log.f64 y))
7.0ms
(-.f64 (+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y) z)
5.0ms
(+.f64 (-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y))) y)
3.0ms
(-.f64 x (*.f64 (+.f64 y 1/2) (log.f64 y)))

simplify121.0ms (1.5%)

Algorithm
egg-herbie
Rules
374×fma-neg_binary64
307×associate--l+_binary64
299×cancel-sign-sub-inv_binary64
275×exp-sum_binary64
242×exp-diff_binary64
Counts
215 → 219
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02423418
16093074
220222997
343502997
448732997

prune197.0ms (2.4%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2145219
Fresh000
Picked101
Done000
Total2155220
Error
0.0b
Counts
220 → 5
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.3b
(-.f64 (+.f64 (-.f64 x (*.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.6b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (cbrt.f64 (+.f64 y 1/2)) (cbrt.f64 (+.f64 y 1/2))) (*.f64 (cbrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))) y) z)
29.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (sqrt.f64 (+.f64 y 1/2)) (sqrt.f64 (log.f64 y))) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (sqrt.f64 (log.f64 y))))) y) z)
Compiler

Compiled 4587 to 2465 computations (46.3% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
0.0b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.1b
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)

series139.0ms (1.7%)

Counts
3 → 72
Calls

3 calls:

81.0ms
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
46.0ms
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
8.0ms
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)

rewrite11.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
28×*-un-lft-identity_binary64
15×add-sqr-sqrt_binary64
13×add-cube-cbrt_binary64
12×prod-diff_binary64
10×add-log-exp_binary64
Counts
3 → 65
Calls

3 calls:

5.0ms
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
2.0ms
(+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x)
0.0ms
(fma.f64 (log.f64 y) (-.f64 -1/2 y) y)

simplify91.0ms (1.1%)

Algorithm
egg-herbie
Rules
605×fma-neg_binary64
603×fma-def_binary64
350×distribute-rgt-in_binary64
341×associate-*l*_binary64
318×distribute-lft-in_binary64
Counts
137 → 111
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01482390
13632232
211082071
345622071
450372071

prune89.0ms (1.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1110111
Fresh044
Picked011
Done000
Total1115116
Error
0.0b
Counts
116 → 5
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.3b
(-.f64 (+.f64 (-.f64 x (*.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.6b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (cbrt.f64 (+.f64 y 1/2)) (cbrt.f64 (+.f64 y 1/2))) (*.f64 (cbrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))) y) z)
29.8b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (sqrt.f64 (+.f64 y 1/2)) (sqrt.f64 (log.f64 y))) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (sqrt.f64 (log.f64 y))))) y) z)
Compiler

Compiled 2421 to 1263 computations (47.8% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y)))
0.1b
(*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y))))
0.3b
(+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))
0.5b
(cbrt.f64 y)

series588.0ms (7.2%)

Counts
4 → 48
Calls

4 calls:

263.0ms
(+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))
149.0ms
(*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y))))
142.0ms
(*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y)))
34.0ms
(cbrt.f64 y)

rewrite43.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
72×log-prod_binary64
60×distribute-lft-in_binary64
60×distribute-rgt-in_binary64
39×cbrt-prod_binary64
36×*-un-lft-identity_binary64
Counts
4 → 152
Calls

4 calls:

20.0ms
(+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))
6.0ms
(*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y))))
6.0ms
(*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y)))
1.0ms
(cbrt.f64 y)

simplify140.0ms (1.7%)

Algorithm
egg-herbie
Rules
707×fma-neg_binary64
346×associate-*l*_binary64
337×associate-*r*_binary64
279×distribute-rgt-out_binary64
242×fma-def_binary64
Counts
200 → 275
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02503870
16483338
226063114
345193114
448993114

prune336.0ms (4.1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2912293
Fresh123
Picked011
Done011
Total2926298
Error
0b
Counts
298 → 6
Alt Table
StatusErrorProgram
0.2b
(-.f64 (+.f64 (-.f64 x (+.f64 (+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (log.f64 (cbrt.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)))) (+.f64 1/2 y))) (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 y))) (+.f64 1/2 y)))) y) z)
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.3b
(-.f64 (+.f64 (-.f64 x (*.f64 (sqrt.f64 (+.f64 y 1/2)) (*.f64 (sqrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.6b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (cbrt.f64 (+.f64 y 1/2)) (cbrt.f64 (+.f64 y 1/2))) (*.f64 (cbrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))) y) z)
Compiler

Compiled 9092 to 5072 computations (44.2% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1)))
0.1b
(+.f64 (-.f64 x (*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))) y)
0.3b
(*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))
0.5b
(cbrt.f64 (neg.f64 y))

series2.9s (35.6%)

Counts
4 → 60
Calls

4 calls:

1.3s
(log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1)))
1.2s
(+.f64 (-.f64 x (*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))) y)
333.0ms
(*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))
40.0ms
(cbrt.f64 (neg.f64 y))

rewrite20.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
13×*-un-lft-identity_binary64
13×add-sqr-sqrt_binary64
12×pow1_binary64
11×add-cube-cbrt_binary64
10×cbrt-prod_binary64
Counts
4 → 86
Calls

4 calls:

7.0ms
(*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))
5.0ms
(+.f64 (-.f64 x (*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))) y)
3.0ms
(log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1)))
1.0ms
(cbrt.f64 (neg.f64 y))

simplify131.0ms (1.6%)

Algorithm
egg-herbie
Rules
651×fma-def_binary64
325×unsub-neg_binary64
314×*-commutative_binary64
273×exp-sum_binary64
270×sub-neg_binary64
Counts
146 → 155
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01613335
13982651
213812558
334392492
445042492
548052492

prune182.0ms (2.2%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New1532155
Fresh213
Picked011
Done022
Total1556161
Error
0b
Counts
161 → 6
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 (fma.f64 (log.f64 y) (-.f64 -1/2 y) y) x) z)
0.3b
(-.f64 (+.f64 (-.f64 x (*.f64 1/3 (*.f64 (fma.f64 y 3 3/2) (log.f64 y)))) y) z)
0.2b
(-.f64 (+.f64 x (fma.f64 (log.f64 (*.f64 (cbrt.f64 -1) (cbrt.f64 (neg.f64 y)))) (fma.f64 y -3 -3/2) y)) z)
0.6b
(-.f64 (+.f64 (-.f64 x (*.f64 (*.f64 (cbrt.f64 (+.f64 y 1/2)) (cbrt.f64 (+.f64 y 1/2))) (*.f64 (cbrt.f64 (+.f64 y 1/2)) (log.f64 y)))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 1/2 y) (*.f64 2 (log.f64 (cbrt.f64 y)))) (*.f64 (+.f64 1/2 y) (log.f64 (cbrt.f64 y))))) y) z)
0.2b
(-.f64 (+.f64 (-.f64 x (*.f64 (log.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 -1))) (+.f64 3/2 (*.f64 y 3)))) y) z)
Compiler

Compiled 4198 to 2816 computations (32.9% saved)

regimes674.0ms (8.3%)

Accuracy

Total 0.1b remaining (87%)

Threshold costs 0.1b (87%)

Counts
132 → 1
Compiler

Compiled 12225 to 8499 computations (30.5% saved)

simplify2.0ms (0%)

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
01016
11516
22316
32716
42916
52916

end115.0ms (1.4%)

Compiler

Compiled 154 to 108 computations (29.9% saved)

Profiling

Loading profile data...