Details

Time bar (total: 4.6s)

analyze910.0ms (19.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)

sample59.0ms (1.3%)

Algorithm
intervals
Results
18.0ms237×body128valid
2.0ms33×body128invalid
2.0msbody512valid
1.0msbody256valid
1.0msbody1024valid
Compiler

Compiled 32 to 22 computations (31.3% saved)

simplify25.0ms (0.5%)

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

prune6.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.1b
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Compiler

Compiled 69 to 45 computations (34.8% saved)

localize14.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

rewrite82.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
14×add-log-exp_binary64
12×add-cube-cbrt_binary64
*-un-lft-identity_binary64
flip3-+_binary64
pow1_binary64
Counts
2 → 85
Calls

2 calls:

38.0ms
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
36.0ms
(+.f64 (*.f64 d1 3) (*.f64 d1 d2))

series123.0ms (2.7%)

Counts
2 → 60
Calls

2 calls:

81.0ms
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
41.0ms
(+.f64 (*.f64 d1 3) (*.f64 d1 d2))

simplify153.0ms (3.3%)

Algorithm
egg-herbie
Rules
820×times-frac_binary64
761×fma-neg_binary64
611×distribute-rgt-in_binary64
301×distribute-rgt-neg-in_binary64
298×cancel-sign-sub-inv_binary64
Counts
145 → 243
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01091611
13201533
214841477
348291477
452091477

prune156.0ms (3.4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2394243
Fresh101
Picked101
Done000
Total2414245
Error
0.0b
Counts
245 → 4
Alt Table
StatusErrorProgram
0.1b
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
28.8b
(+.f64 (/.f64 (*.f64 (*.f64 d1 d1) (-.f64 9 (*.f64 d2 d2))) (*.f64 d1 (-.f64 3 d2))) (*.f64 d1 d3))
0.9b
(+.f64 (pow.f64 (cbrt.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2))) 3) (*.f64 d1 d3))
0.0b
(+.f64 (fma.f64 d1 3 (*.f64 d1 d2)) (*.f64 d1 d3))
Compiler

Compiled 2489 to 1283 computations (48.5% saved)

localize13.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

rewrite56.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
12×add-cube-cbrt_binary64
fma-udef_binary64
add-log-exp_binary64
pow1_binary64
add-sqr-sqrt_binary64
Counts
2 → 77
Calls

2 calls:

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

series128.0ms (2.8%)

Counts
2 → 60
Calls

2 calls:

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

simplify158.0ms (3.4%)

Algorithm
egg-herbie
Rules
592×fma-neg_binary64
551×fma-def_binary64
488×distribute-rgt-in_binary64
459×distribute-lft-in_binary64
392×times-frac_binary64
Counts
137 → 218
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0931481
12671372
210691347
343541327
449841327
550971327

prune119.0ms (2.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2171218
Fresh123
Picked011
Done000
Total2184222
Error
0.0b
Counts
222 → 4
Alt Table
StatusErrorProgram
0.9b
(+.f64 (pow.f64 (cbrt.f64 (fma.f64 d1 3 (*.f64 d1 d2))) 3) (*.f64 d1 d3))
0.1b
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
28.8b
(+.f64 (/.f64 (*.f64 (*.f64 d1 d1) (-.f64 9 (*.f64 d2 d2))) (*.f64 d1 (-.f64 3 d2))) (*.f64 d1 d3))
0.0b
(+.f64 (fma.f64 d1 3 (*.f64 d1 d2)) (*.f64 d1 d3))
Compiler

Compiled 2002 to 961 computations (52% saved)

localize17.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

rewrite76.0ms (1.6%)

Algorithm
rewrite-expression-head
Rules
15×pow1_binary64
12×add-sqr-sqrt_binary64
10×flip3-+_binary64
10×add-cube-cbrt_binary64
distribute-rgt-in_binary64
Counts
2 → 93
Calls

2 calls:

35.0ms
(+.f64 (*.f64 d1 3) (*.f64 d1 (+.f64 d2 d3)))
29.0ms
(*.f64 d1 (+.f64 d2 d3))

series118.0ms (2.6%)

Counts
2 → 60
Calls

2 calls:

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

simplify137.0ms (3%)

Algorithm
egg-herbie
Rules
793×distribute-rgt-in_binary64
719×fma-def_binary64
292×cancel-sign-sub-inv_binary64
253×distribute-rgt-neg-in_binary64
215×distribute-lft-neg-in_binary64
Counts
153 → 249
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01281581
13901512
216361497
353511497

prune126.0ms (2.7%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New2472249
Fresh112
Picked101
Done101
Total2503253
Error
0b
Counts
253 → 3
Alt Table
StatusErrorProgram
0.9b
(+.f64 (pow.f64 (cbrt.f64 (fma.f64 d1 3 (*.f64 d1 d2))) 3) (*.f64 d1 d3))
23.8b
(-.f64 (*.f64 1 (/.f64 (*.f64 9 d1) (-.f64 3 (+.f64 d2 d3)))) (*.f64 1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 2) d1) (-.f64 3 (+.f64 d2 d3)))))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 2131 to 993 computations (53.4% saved)

localize11.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)))

rewrite22.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
fma-udef_binary64
add-cube-cbrt_binary64
pow1_binary64
add-sqr-sqrt_binary64
add-cbrt-cube_binary64
Counts
1 → 34
Calls

1 calls:

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

series79.0ms (1.7%)

Counts
1 → 36
Calls

1 calls:

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

simplify146.0ms (3.2%)

Algorithm
egg-herbie
Rules
390×associate-+l+_binary64
367×associate-+r+_binary64
361×sub-neg_binary64
276×unsub-neg_binary64
274×cancel-sign-sub-inv_binary64
Counts
70 → 108
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047717
1136684
2490683
31919680
44438680
54876680
64980680
74970680

prune106.0ms (2.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2200220
Fresh022
Picked011
Done000
Total2203223
Error
0b
Counts
223 → 3
Alt Table
StatusErrorProgram
0.9b
(+.f64 (pow.f64 (cbrt.f64 (fma.f64 d1 3 (*.f64 d1 d2))) 3) (*.f64 d1 d3))
23.8b
(-.f64 (*.f64 1 (/.f64 (*.f64 9 d1) (-.f64 3 (+.f64 d2 d3)))) (*.f64 1 (/.f64 (*.f64 (pow.f64 (+.f64 d2 d3) 2) d1) (-.f64 3 (+.f64 d2 d3)))))
0.0b
(fma.f64 d1 3 (*.f64 d1 (+.f64 d2 d3)))
Compiler

Compiled 1617 to 674 computations (58.3% saved)

regimes398.0ms (8.6%)

Accuracy

Total 0.0b remaining (47.2%)

Threshold costs 0.0b (47.2%)

Compiler

Compiled 2976 to 2000 computations (32.8% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
1912
2912

end14.0ms (0.3%)

Remove

(sort d2 d3)

Compiler

Compiled 36 to 21 computations (41.7% saved)

sample1.4s (29.6%)

Algorithm
intervals
Results
589.0ms7497×body128valid
59.0ms704×body128invalid
49.0ms206×body512valid
46.0ms166×body1024valid
19.0ms131×body256valid
Compiler

Compiled 87 to 58 computations (33.3% saved)

Profiling

Loading profile data...