Details

Time bar (total: 5.9s)

analyze1.4s (23.9%)

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
0%99.1%0.9%9
0%98.1%1.9%10
0%95.6%4.4%11
0%94.5%5.5%12
0%93.4%6.6%13
0%92.7%7.3%14
Compiler

Compiled 15 to 10 computations (33.3% saved)

sample1.7s (29.3%)

Symmetry

(sort d2 d3)

Results
888.0ms7752×body128valid
578.0ms1044×body8192exit
78.0ms159×body1024valid
59.0ms343×body128invalid
48.0ms205×body512valid
27.0ms140×body256valid
Compiler

Compiled 29 to 19 computations (34.5% saved)

simplify7.0ms (0.1%)

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

prune31.0ms (0.5%)

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 d1 (+.f64 3 (+.f64 d2 d3)))
0.1b
(+.f64 (+.f64 (*.f64 d1 3) (*.f64 d1 d2)) (*.f64 d1 d3))
Compiler

Compiled 69 to 45 computations (34.8% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series8.0ms (0.1%)

Counts
1 → 28
Calls

1 calls:

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

rewrite9.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
associate-*r*_binary64
add-sqr-sqrt_binary64
distribute-lft-out_binary64
associate-*l*_binary64
Counts
1 → 26
Calls

1 calls:

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

simplify69.0ms (1.2%)

Algorithm
egg-herbie
Rules
949×distribute-rgt-in_binary64
943×distribute-lft-in_binary64
503×fma-neg_binary64
394×associate-*l*_binary64
294×associate-*r*_binary64
Counts
54 → 48
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
063601
1162559
2683559
32795559
43172559
54459559
64975559

prune40.0ms (0.7%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New43548
Fresh101
Picked011
Done000
Total44650
Error
0b
Counts
50 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
21.6b
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
1.1b
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
31.8b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
24.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
51.2b
(cbrt.f64 (*.f64 (*.f64 (*.f64 d1 d1) d1) (*.f64 (*.f64 (+.f64 3 (+.f64 d2 d3)) (+.f64 3 (+.f64 d2 d3))) (+.f64 3 (+.f64 d2 d3)))))
Compiler

Compiled 831 to 463 computations (44.3% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
0.4b
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
0.4b
(cbrt.f64 (+.f64 3 (+.f64 d2 d3)))
0.4b
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))

series702.0ms (12%)

Counts
4 → 120
Calls

4 calls:

574.0ms
(*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
78.0ms
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
41.0ms
(cbrt.f64 (+.f64 3 (+.f64 d2 d3)))
9.0ms
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))

rewrite87.0ms (1.5%)

Algorithm
rewrite-expression-head
Rules
80×cbrt-div_binary64
70×*-un-lft-identity_binary64
46×cbrt-prod_binary64
44×associate-*r/_binary64
40×flip-+_binary64
Counts
4 → 162
Calls

4 calls:

21.0ms
(*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3)))))
19.0ms
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
11.0ms
(*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
5.0ms
(cbrt.f64 (+.f64 3 (+.f64 d2 d3)))

simplify229.0ms (3.9%)

Algorithm
egg-herbie
Rules
828×fma-def_binary64
319×*-commutative_binary64
236×fma-neg_binary64
226×associate--l+_binary64
173×+-commutative_binary64
Counts
282 → 355
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
075511339
1231010560
2499210558
3518010558

prune563.0ms (9.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New5001501
Fresh134
Picked011
Done011
Total5016507
Error
0b
Counts
507 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
21.6b
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
1.1b
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
31.8b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
24.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
0.1b
(+.f64 (*.f64 d2 d1) (+.f64 (*.f64 d1 d3) (*.f64 3 d1)))
Compiler

Compiled 24283 to 16125 computations (33.6% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series16.0ms (0.3%)

Counts
2 → 54
Calls

2 calls:

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

rewrite9.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-log-exp_binary64
sum-log_binary64
+-commutative_binary64
flip-+_binary64
*-un-lft-identity_binary64
Counts
2 → 30
Calls

2 calls:

5.0ms
(+.f64 (*.f64 d2 d1) (+.f64 (*.f64 d1 d3) (*.f64 3 d1)))
3.0ms
(+.f64 (*.f64 d1 d3) (*.f64 3 d1))

simplify69.0ms (1.2%)

Algorithm
egg-herbie
Rules
687×fma-neg_binary64
637×associate-*l*_binary64
555×fma-def_binary64
511×associate-*r*_binary64
421×distribute-rgt-in_binary64
Counts
84 → 63
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
064876
1236834
2889826
33670822
44612822
55002822

prune46.0ms (0.8%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New63063
Fresh033
Picked011
Done022
Total63669
Error
0b
Counts
69 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
21.6b
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
1.1b
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
31.8b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
24.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
0.1b
(+.f64 (*.f64 d2 d1) (+.f64 (*.f64 d1 d3) (*.f64 3 d1)))
Compiler

Compiled 1122 to 576 computations (48.7% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series103.0ms (1.8%)

Counts
3 → 60
Calls

3 calls:

62.0ms
(*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
33.0ms
(sqrt.f64 (+.f64 3 (+.f64 d2 d3)))
8.0ms
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))

rewrite31.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
24×*-un-lft-identity_binary64
16×sqrt-prod_binary64
16×associate-*r*_binary64
16×sqrt-div_binary64
16×add-sqr-sqrt_binary64
Counts
3 → 81
Calls

3 calls:

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

simplify142.0ms (2.4%)

Algorithm
egg-herbie
Rules
644×fma-def_binary64
436×fma-neg_binary64
421×*-commutative_binary64
307×cancel-sign-sub-inv_binary64
244×associate-*l*_binary64
Counts
141 → 133
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01952457
15102313
216642269
331162260
448162258
549982258
649502258

prune122.0ms (2.1%)

Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New1680168
Fresh022
Picked011
Done033
Total1686174
Error
0b
Counts
174 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
21.6b
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
1.1b
(*.f64 (*.f64 d1 (*.f64 (cbrt.f64 (+.f64 3 (+.f64 d2 d3))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (+.f64 3 (+.f64 d2 d3))))
31.8b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
24.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
0.1b
(+.f64 (*.f64 d2 d1) (+.f64 (*.f64 d1 d3) (*.f64 3 d1)))
Compiler

Compiled 4440 to 2728 computations (38.6% saved)

regimes346.0ms (5.9%)

Accuracy

Total 0.1b remaining (86.7%)

Threshold costs 0.1b (86.7%)

Counts
73 → 1
Compiler

Compiled 5324 to 3684 computations (30.8% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11110
21110

end82.0ms (1.4%)

Remove

(sort d2 d3)

Compiler

Compiled 141 to 92 computations (34.8% saved)

Profiling

Loading profile data...