Details

Time bar (total: 5.1s)

analyze893.0ms (17.4%)

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
0%99.9%0.1%7
0%99.9%0.1%8
12.5%85.8%1.7%9
16.4%79.2%4.4%10
20.7%72.4%7%11
32.6%53.3%14.1%12
36%45.5%18.5%13
38.3%41.1%20.6%14
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.4s (28.1%)

Results
1.0s8256×body128valid
344.0ms2981×body128invalid
Compiler

Compiled 56 to 35 computations (37.5% saved)

simplify70.0ms (1.4%)

Algorithm
egg-herbie
Rules
802×fma-def_binary64
795×div-sub_binary64
536×times-frac_binary64
518×neg-mul-1_binary64
376×distribute-frac-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01220
12720
26520
312620
427820
560220
6131719
7285319
8444619
9474319
10499119

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
10.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
10.7b
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y))
28.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 99 to 58 computations (41.4% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
0.4b
(-.f64 (*.f64 z z) (*.f64 x x))
11.4b
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)

series59.0ms (1.1%)

Counts
3 → 96
Calls

3 calls:

27.0ms
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
26.0ms
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
6.0ms
(-.f64 (*.f64 z z) (*.f64 x x))

rewrite95.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
613×fma-def_binary64
351×fma-neg_binary64
344×egg-rr
199×expm1-udef_binary64
199×log1p-udef_binary64
Counts
3 → 344
Calls

3 calls:

87.0ms
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
87.0ms
(-.f64 (*.f64 z z) (*.f64 x x))
87.0ms
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0939
121639
2307739
3508539
000
100

simplify130.0ms (2.5%)

Algorithm
egg-herbie
Rules
957×fma-neg_binary64
377×associate-*l*_binary64
347×neg-sub0_binary64
345×neg-mul-1_binary64
323×associate-*r*_binary64
Counts
440 → 365
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0231234
1541153
21151153
32831151
47741151
525881151
644551151
749891151
849931151
949151151

prune275.0ms (5.3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New3605365
Fresh011
Picked101
Done000
Total3616367
Error
0.0b
Counts
367 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f64 -1/2 (fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y)))
11.0b
(*.f64 -1/2 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)) 3) y))
10.7b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x))) -1) y))
29.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (sqrt.f64 y)) (/.f64 (-.f64 z x) (sqrt.f64 y))) y))
0.5b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
28.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 8473 to 2806 computations (66.9% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series29.0ms (0.6%)

Counts
2 → 64
Calls

2 calls:

20.0ms
(fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y))
9.0ms
(/.f64 (-.f64 z x) y)

rewrite115.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
875×prod-diff_binary64
349×egg-rr
188×log1p-udef_binary64
114×add-sqr-sqrt_binary64
107×log1p-expm1-u_binary64
Counts
2 → 349
Calls

2 calls:

104.0ms
(/.f64 (-.f64 z x) y)
104.0ms
(fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01123
122721
2293321
3497721
000
100

simplify81.0ms (1.6%)

Algorithm
egg-herbie
Rules
768×div-sub_binary64
717×fma-neg_binary64
342×distribute-rgt-neg-in_binary64
257×associate-*l*_binary64
246×associate-*r*_binary64
Counts
413 → 367
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
025836
161755
2114733
3262687
4645687
52192687
64220687
74971687

prune240.0ms (4.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New3661367
Fresh055
Picked011
Done000
Total3667373
Error
0b
Counts
373 → 7
Alt Table
StatusErrorProgram
0.1b
(*.f64 -1/2 (fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y)))
11.0b
(*.f64 -1/2 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)) 3) y))
10.7b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x))) -1) y))
29.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (sqrt.f64 y)) (/.f64 (-.f64 z x) (sqrt.f64 y))) y))
0.5b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y))) y))
28.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
8.2b
(*.f64 -1/2 (fma.f64 (/.f64 (+.f64 z x) 1) (+.f64 (fma.f64 z (/.f64 1 y) (neg.f64 (*.f64 (/.f64 x (cbrt.f64 y)) (/.f64 1 (cbrt.f64 (*.f64 y y)))))) (fma.f64 (neg.f64 (/.f64 x (cbrt.f64 y))) (/.f64 1 (cbrt.f64 (*.f64 y y))) (*.f64 (/.f64 x (cbrt.f64 y)) (/.f64 1 (cbrt.f64 (*.f64 y y)))))) (neg.f64 y)))
Compiler

Compiled 13925 to 3558 computations (74.4% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2))
0.3b
(*.f64 (/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y)))
0.5b
(pow.f64 (cbrt.f64 y) 2)
0.5b
(cbrt.f64 y)

series347.0ms (6.7%)

Counts
4 → 96
Calls

4 calls:

221.0ms
(/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2))
51.0ms
(*.f64 (/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y)))
39.0ms
(pow.f64 (cbrt.f64 y) 2)
36.0ms
(cbrt.f64 y)

rewrite78.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
758×prod-diff_binary64
138×add-sqr-sqrt_binary64
133×egg-rr
132×log1p-expm1-u_binary64
132×expm1-log1p-u_binary64
Counts
4 → 133
Calls

4 calls:

75.0ms
(/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2))
75.0ms
(*.f64 (/.f64 (+.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y)))
75.0ms
(pow.f64 (cbrt.f64 y) 2)
75.0ms
(cbrt.f64 y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01234
127434
2389934
3541334
000
100

simplify75.0ms (1.5%)

Algorithm
egg-herbie
Rules
739×unswap-sqr_binary64
680×fma-def_binary64
338×associate-*l*_binary64
306×associate-*r*_binary64
190×distribute-rgt-in_binary64
Counts
229 → 155
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0371160
1901160
21911160
35911160
423191160
549051160
649501160

prune149.0ms (2.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1801181
Fresh325
Picked101
Done011
Total1844188
Error
0b
Counts
188 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
0.1b
(*.f64 -1/2 (fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y)))
29.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (sqrt.f64 y)) (/.f64 (-.f64 z x) (sqrt.f64 y))) y))
28.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 3987 to 1732 computations (56.6% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series58.0ms (1.1%)

Counts
3 → 96
Calls

3 calls:

24.0ms
(-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y)
19.0ms
(/.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))
15.0ms
(/.f64 y (-.f64 z x))

rewrite86.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
475×fma-def_binary64
263×fma-neg_binary64
214×egg-rr
210×expm1-udef_binary64
210×log1p-udef_binary64
Counts
3 → 214
Calls

3 calls:

81.0ms
(-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y)
81.0ms
(/.f64 y (-.f64 z x))
81.0ms
(/.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0936
121736
2334436
3500336
000
100

simplify76.0ms (1.5%)

Algorithm
egg-herbie
Rules
493×associate-/r/_binary64
406×cancel-sign-sub-inv_binary64
382×associate-/l/_binary64
242×fma-neg_binary64
205×fma-def_binary64
Counts
310 → 246
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0621630
11651549
24841441
319581402
444751402
549851402

prune142.0ms (2.8%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2460246
Fresh022
Picked011
Done011
Total2464250
Error
0b
Counts
250 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (+.f64 z x) (/.f64 y (-.f64 z x))) y))
0.1b
(*.f64 -1/2 (fma.f64 (/.f64 (+.f64 z x) 1) (/.f64 (-.f64 z x) y) (neg.f64 y)))
29.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 z x) (sqrt.f64 y)) (/.f64 (-.f64 z x) (sqrt.f64 y))) y))
28.5b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 5233 to 1660 computations (68.3% saved)

regimes590.0ms (11.5%)

Accuracy

Total 0.1b remaining (85.1%)

Threshold costs 0.1b (85.1%)

Counts
80 → 1
Compiler

Compiled 9560 to 6190 computations (35.3% saved)

simplify3.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
01119
11919
22419
32719
42819
52819

end66.0ms (1.3%)

Compiler

Compiled 104 to 65 computations (37.5% saved)

Profiling

Loading profile data...