Details

Time bar (total: 5.6s)

analyze422.0ms (7.5%)

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%99.9%0.1%6
12.5%87.4%0.1%7
31.2%68.6%0.1%8
34.3%62.4%3.3%9
42.1%49.9%7.9%10
53.8%37.8%8.3%11
56.2%33%10.9%12
60.3%25.6%14.1%13
66.4%19.4%14.2%14
Compiler

Compiled 13 to 10 computations (23.1% saved)

sample1.1s (19.7%)

Results
844.0ms8256×body128valid
75.0ms730×body128invalid
Compiler

Compiled 38 to 29 computations (23.7% saved)

simplify44.0ms (0.8%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
419×fma-neg_binary64
210×distribute-rgt-in_binary64
164×distribute-lft-in_binary64
139×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0913
12013
24711
313211
433411
564011
696511
7125411
8126211
9126211
10119111

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
5.6b
Counts
3 → 1
Alt Table
StatusErrorProgram
5.6b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
Compiler

Compiled 42 to 27 computations (35.7% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.2b
(*.f64 x (-.f64 (fma.f64 y z 1) z))

series13.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

13.0ms
(*.f64 x (-.f64 (fma.f64 y z 1) z))

rewrite52.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
804×log1p-expm1-u_binary64
804×expm1-log1p-u_binary64
359×prod-diff_binary64
83×add-sqr-sqrt_binary64
76×add-cbrt-cube_binary64
Counts
1 → 21
Calls

1 calls:

51.0ms
(*.f64 x (-.f64 (fma.f64 y z 1) z))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
116311
2200711
3560011
000
100

simplify61.0ms (1.1%)

Algorithm
egg-herbie
Rules
723×fma-neg_binary64
383×fma-def_binary64
129×cancel-sign-sub-inv_binary64
112×distribute-rgt-in_binary64
97×unsub-neg_binary64
Counts
57 → 31
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
023432
159372
2153372
3277372
4569372
5925372
61071372
71230372
81242372
91242372
101171372

prune20.0ms (0.4%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New29231
Fresh000
Picked011
Done000
Total29332
Error
0.0b
Counts
32 → 3
Alt Table
StatusErrorProgram
5.6b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
1.3b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
19.4b
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 y z 1) 2) (*.f64 z z)) x) (+.f64 z (fma.f64 y z 1)))
Compiler

Compiled 443 to 257 computations (42% saved)

localize5.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y (*.f64 z x)) x)
0.0b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
2.6b
(*.f64 y (*.f64 z x))

series31.0ms (0.6%)

Counts
3 → 60
Calls

3 calls:

16.0ms
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
8.0ms
(*.f64 y (*.f64 z x))
7.0ms
(+.f64 (*.f64 y (*.f64 z x)) x)

rewrite88.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
680×fma-def_binary64
532×log-prod_binary64
321×fma-neg_binary64
254×egg-rr
178×expm1-udef_binary64
Counts
3 → 254
Calls

3 calls:

82.0ms
(+.f64 (*.f64 y (*.f64 z x)) x)
82.0ms
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
82.0ms
(*.f64 y (*.f64 z x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0829
118729
2264229
3563529
000
100

simplify71.0ms (1.3%)

Algorithm
egg-herbie
Rules
850×fma-def_binary64
459×fma-neg_binary64
147×distribute-rgt-in_binary64
135×unsub-neg_binary64
110×distribute-lft-in_binary64
Counts
314 → 269
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025696
171528
2173528
3388528
4809528
51155528
61272528
71292528
81292528
91221528

prune175.0ms (3.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New2645269
Fresh011
Picked101
Done011
Total2657272
Error
0.0b
Counts
272 → 7
Alt Table
StatusErrorProgram
5.6b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
34.6b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 z x)) (-.f64 x (*.f64 z x)))
1.6b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
1.3b
(fma.f64 z (neg.f64 x) (fma.f64 y (*.f64 z x) x))
24.6b
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) 2) x) (*.f64 z x))
30.9b
(*.f64 (-.f64 (*.f64 y x) x) z)
19.4b
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 y z 1) 2) (*.f64 z z)) x) (+.f64 z (fma.f64 y z 1)))
Compiler

Compiled 5040 to 1208 computations (76% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.3b
(fma.f64 y (*.f64 z x) x)

series8.0ms (0.1%)

Counts
1 → 36
Calls

1 calls:

8.0ms
(fma.f64 y (*.f64 z x) x)

rewrite44.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
526×log1p-expm1-u_binary64
526×expm1-log1p-u_binary64
356×unpow-prod-down_binary64
297×log-prod_binary64
160×pow2_binary64
Counts
1 → 36
Calls

1 calls:

43.0ms
(fma.f64 y (*.f64 z x) x)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11188
213768
352188
000
100

simplify17.0ms (0.3%)

Algorithm
egg-herbie
Rules
31×fma-def_binary64
11×associate-*r*_binary64
11×associate-*l*_binary64
*-commutative_binary64
*-lft-identity_binary64
Counts
72 → 41
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012270
121270
237270
337270
462270
556270
658270
756270

prune31.0ms (0.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New41041
Fresh055
Picked011
Done011
Total41748
Error
0.0b
Counts
48 → 7
Alt Table
StatusErrorProgram
5.6b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
34.6b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 z x)) (-.f64 x (*.f64 z x)))
1.6b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
1.3b
(fma.f64 z (neg.f64 x) (fma.f64 y (*.f64 z x) x))
24.6b
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) 2) x) (*.f64 z x))
30.9b
(*.f64 (-.f64 (*.f64 y x) x) z)
19.4b
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 y z 1) 2) (*.f64 z z)) x) (+.f64 z (fma.f64 y z 1)))
Compiler

Compiled 865 to 303 computations (65% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
0.3b
(*.f64 (cbrt.f64 (*.f64 z x)) y)
0.5b
(pow.f64 (cbrt.f64 (*.f64 z x)) 2)
10.3b
(cbrt.f64 (*.f64 z x))

series2.4s (42.4%)

Counts
4 → 120
Calls

4 calls:

859.0ms
(*.f64 (cbrt.f64 (*.f64 z x)) y)
548.0ms
(pow.f64 (cbrt.f64 (*.f64 z x)) 2)
534.0ms
(cbrt.f64 (*.f64 z x))
448.0ms
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))

rewrite157.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
816×prod-diff_binary64
596×fma-udef_binary64
218×fma-neg_binary64
202×expm1-udef_binary64
202×log1p-udef_binary64
Counts
4 → 93
Calls

4 calls:

155.0ms
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
155.0ms
(*.f64 (cbrt.f64 (*.f64 z x)) y)
155.0ms
(pow.f64 (cbrt.f64 (*.f64 z x)) 2)
155.0ms
(cbrt.f64 (*.f64 z x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01151
123438
2274938
3472938
4462638
5508238
000
100

simplify222.0ms (3.9%)

Algorithm
egg-herbie
Rules
1348×fma-neg_binary64
756×associate-*l*_binary64
656×associate-*r*_binary64
419×fma-def_binary64
327×times-frac_binary64
Counts
213 → 134
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0862300
12402300
24491987
311061211
442281187
540851187
648651171
749671171
849961171
949991171
1061011171

prune132.0ms (2.4%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New1651166
Fresh044
Picked011
Done022
Total1658173
Error
0b
Counts
173 → 8
Alt Table
StatusErrorProgram
5.6b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
34.6b
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 z x)) (-.f64 x (*.f64 z x)))
1.6b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
1.3b
(fma.f64 z (neg.f64 x) (fma.f64 y (*.f64 z x) x))
24.6b
(-.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 y (*.f64 z x))) 2) x) (*.f64 z x))
30.9b
(*.f64 (-.f64 (*.f64 y x) x) z)
19.4b
(/.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 y z 1) 2) (*.f64 z z)) x) (+.f64 z (fma.f64 y z 1)))
1.6b
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 x) 2)) (*.f64 (cbrt.f64 (*.f64 z x)) y) (-.f64 x (*.f64 z x)))
Compiler

Compiled 3413 to 1075 computations (68.5% saved)

regimes381.0ms (6.8%)

Accuracy

Total 0.2b remaining (96%)

Threshold costs 0.2b (96%)

Counts
35 → 3
Compiler

Compiled 3482 to 2114 computations (39.3% saved)

bsearch1.0ms (0%)

Compiler

Compiled 12 to 9 computations (25% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×sub-neg_binary64
10×+-commutative_binary64
10×*-commutative_binary64
10×cancel-sign-sub-inv_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02780
14980
27280
38980
49980
510180
69780

end123.0ms (2.2%)

Compiler

Compiled 251 to 143 computations (43% saved)

Profiling

Loading profile data...