Details

Time bar (total: 2.7s)

analyze402.0ms (14.7%)

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
37.4%62.4%0.1%8
40.6%57.7%1.7%9
45.2%51.1%3.7%10
57.7%33.5%8.7%11
59.7%29.4%10.9%12
62%25%13%13
68.3%17.4%14.4%14
Compiler

Compiled 15 to 10 computations (33.3% saved)

sample1.0s (36.8%)

Symmetry

(sort d2 d3)

Results
766.0ms7732×body128valid
73.0ms654×body128invalid
60.0ms181×body1024valid
51.0ms214×body512valid
20.0ms129×body256valid
Compiler

Compiled 44 to 29 computations (34.1% saved)

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Rules
25×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
distribute-lft-out_binary64
associate-+r+_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01013
12010
24410
36410
46610
56710
66710

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Compiler

Compiled 41 to 27 computations (34.1% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))

series7.0ms (0.3%)

Counts
1 → 28
Calls

1 calls:

7.0ms
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))

rewrite105.0ms (3.8%)

Algorithm
batch-egg-rewrite
Rules
684×prod-diff_binary64
527×fma-udef_binary64
301×fma-def_binary64
202×fma-neg_binary64
172×expm1-udef_binary64
Counts
1 → 55
Calls

1 calls:

104.0ms
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
118610
2249810
3484210
4478310
5498810
000
100

simplify13.0ms (0.5%)

Algorithm
egg-herbie
Rules
25×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
distribute-rgt-in_binary64
associate-+r+_binary64
Counts
83 → 64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018250
136250
257250
366250
467250
567250

prune38.0ms (1.4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New60464
Fresh000
Picked101
Done000
Total61465
Error
0b
Counts
65 → 4
Alt Table
StatusErrorProgram
23.4b
(/.f64 (*.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)) d1) (-.f64 3 (+.f64 d2 d3)))
0.4b
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
0.0b
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 894 to 420 computations (53% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 d1 (+.f64 d2 d3))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))

series14.0ms (0.5%)

Counts
2 → 60
Calls

2 calls:

8.0ms
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
6.0ms
(*.f64 d1 (+.f64 d2 d3))

rewrite50.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
892×expm1-log1p-u_binary64
813×prod-diff_binary64
90×add-sqr-sqrt_binary64
86×log1p-expm1-u_binary64
84×add-log-exp_binary64
Counts
2 → 52
Calls

2 calls:

49.0ms
(*.f64 d1 (+.f64 d2 d3))
49.0ms
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
117517
2220517
3539417
000
100

simplify20.0ms (0.7%)

Algorithm
egg-herbie
Rules
28×fma-def_binary64
10×+-commutative_binary64
*-commutative_binary64
associate-+r+_binary64
distribute-rgt-in_binary64
Counts
112 → 62
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017499
140480
261480
367480
468480
567480

prune35.0ms (1.3%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New62062
Fresh033
Picked011
Done000
Total62466
Error
0b
Counts
66 → 4
Alt Table
StatusErrorProgram
23.4b
(/.f64 (*.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)) d1) (-.f64 3 (+.f64 d2 d3)))
0.4b
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
0.0b
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 860 to 426 computations (50.5% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))

series9.0ms (0.3%)

Counts
1 → 36
Calls

1 calls:

9.0ms
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))

rewrite41.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
813×log1p-expm1-u_binary64
813×expm1-log1p-u_binary64
228×prod-diff_binary64
86×add-sqr-sqrt_binary64
80×add-log-exp_binary64
Counts
1 → 24
Calls

1 calls:

40.0ms
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
116910
2204310
3538010
000
100

simplify16.0ms (0.6%)

Algorithm
egg-herbie
Rules
28×fma-def_binary64
+-commutative_binary64
*-commutative_binary64
distribute-rgt-in_binary64
associate-+r+_binary64
Counts
60 → 34
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
016331
138330
259330
367330
468330
567330

prune20.0ms (0.7%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New34034
Fresh022
Picked011
Done011
Total34438
Error
0b
Counts
38 → 4
Alt Table
StatusErrorProgram
23.4b
(/.f64 (*.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)) d1) (-.f64 3 (+.f64 d2 d3)))
0.4b
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
0.0b
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 473 to 296 computations (37.4% saved)

localize11.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 d1 (+.f64 d2 d3))
0.1b
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
0.5b
(*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3)))
0.6b
(cbrt.f64 (*.f64 d1 3))

series311.0ms (11.4%)

Counts
3 → 60
Calls

3 calls:

230.0ms
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
44.0ms
(*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3)))
37.0ms
(cbrt.f64 (*.f64 d1 3))

rewrite57.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
544×log-prod_binary64
311×fma-def_binary64
200×expm1-udef_binary64
200×log1p-udef_binary64
179×log-pow_binary64
Counts
3 → 81
Calls

3 calls:

56.0ms
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
56.0ms
(*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3)))
56.0ms
(cbrt.f64 (*.f64 d1 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
123325
2277925
3507825
000
100

simplify137.0ms (5%)

Algorithm
egg-herbie
Rules
980×fma-def_binary64
776×unswap-sqr_binary64
662×sqr-pow_binary64
474×*-commutative_binary64
322×associate-*l*_binary64
Counts
141 → 100
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
032645
175590
2149590
3354590
41062590
51797590
61997590
72255590
82629590
93025590
103521590
113962590
124583590
134856590
144777590

prune130.0ms (4.8%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New1920192
Fresh011
Picked011
Done022
Total1924196
Error
0b
Counts
196 → 4
Alt Table
StatusErrorProgram
23.4b
(/.f64 (*.f64 (-.f64 9 (pow.f64 (+.f64 d2 d3) 2)) d1) (-.f64 3 (+.f64 d2 d3)))
0.4b
(fma.f64 (*.f64 (cbrt.f64 (*.f64 d1 3)) (cbrt.f64 (*.f64 d1 3))) (cbrt.f64 (*.f64 d1 3)) (*.f64 d1 (+.f64 d2 d3)))
0.0b
(fma.f64 d1 (+.f64 3 d2) (*.f64 d1 d3))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 3933 to 2414 computations (38.6% saved)

regimes158.0ms (5.8%)

Accuracy

Total 0.0b remaining (82.2%)

Threshold costs 0.0b (82.2%)

Counts
43 → 1
Compiler

Compiled 2292 to 1636 computations (28.6% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
11011
21011

end127.0ms (4.6%)

Remove

(sort d2 d3)

Compiler

Compiled 106 to 70 computations (34% saved)

Profiling

Loading profile data...