Details

Time bar (total: 4.1s)

analyze436.0ms (10.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.2s (29.3%)

Symmetry

(sort d2 d3)

Results
952.0ms7761×body128valid
66.0ms654×body128invalid
56.0ms172×body1024valid
50.0ms201×body512valid
23.0ms122×body256valid
Compiler

Compiled 44 to 29 computations (34.1% saved)

simplify9.0ms (0.2%)

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

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

series7.0ms (0.2%)

Counts
1 → 28
Calls

1 calls:

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

rewrite7.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:

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

simplify82.0ms (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

prune59.0ms (1.5%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New45348
Fresh101
Picked011
Done000
Total46450
Error
0b
Counts
50 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
32.2b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
26.2b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
32.7b
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
Compiler

Compiled 751 to 411 computations (45.3% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 d2 d3) (+.f64 d2 d3))
8.7b
(*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))))
15.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))

series90.0ms (2.2%)

Counts
3 → 96
Calls

3 calls:

56.0ms
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
29.0ms
(*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))))
5.0ms
(*.f64 (+.f64 d2 d3) (+.f64 d2 d3))

rewrite31.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
37×*-un-lft-identity_binary64
22×add-sqr-sqrt_binary64
13×add-cube-cbrt_binary64
12×add-cbrt-cube_binary64
12×add-exp-log_binary64
Counts
3 → 108
Calls

3 calls:

10.0ms
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
6.0ms
(*.f64 (+.f64 d2 d3) (+.f64 d2 d3))
5.0ms
(*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3))))

simplify114.0ms (2.8%)

Algorithm
egg-herbie
Rules
245×fma-neg_binary64
237×associate-/l*_binary64
236×associate-*r*_binary64
218×associate-*l*_binary64
196×times-frac_binary64
Counts
204 → 204
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03215107
19584615
241554506
349704506

prune172.0ms (4.2%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2040204
Fresh022
Picked011
Done011
Total2044208
Error
0b
Counts
208 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
32.2b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
26.2b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
32.7b
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
Compiler

Compiled 6111 to 2892 computations (52.7% saved)

localize7.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series34.0ms (0.8%)

Counts
2 → 56
Calls

2 calls:

21.0ms
(*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3)))
13.0ms
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))

rewrite20.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
12×associate-*l*_binary64
12×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
2 → 59
Calls

2 calls:

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

simplify104.0ms (2.6%)

Algorithm
egg-herbie
Rules
611×fma-def_binary64
588×fma-neg_binary64
361×+-commutative_binary64
321×*-commutative_binary64
269×unswap-sqr_binary64
Counts
115 → 98
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01021512
12571350
210351350
315821350
426641350
542811350
649841350
749321350

prune46.0ms (1.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New98098
Fresh011
Picked011
Done022
Total984102
Error
0b
Counts
102 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
32.2b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
26.2b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
32.7b
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
Compiler

Compiled 1694 to 728 computations (57% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 3 (+.f64 d2 d3))
0.2b
(-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))
4.9b
(*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
28.9b
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))

series373.0ms (9.2%)

Counts
4 → 120
Calls

4 calls:

280.0ms
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
80.0ms
(*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
9.0ms
(-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))
3.0ms
(*.f64 3 (+.f64 d2 d3))

rewrite57.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
32×associate-*r/_binary64
28×flip-+_binary64
28×flip3-+_binary64
16×frac-sub_binary64
14×*-un-lft-identity_binary64
Counts
4 → 118
Calls

4 calls:

22.0ms
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
8.0ms
(*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3)))
8.0ms
(-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))
4.0ms
(*.f64 3 (+.f64 d2 d3))

simplify176.0ms (4.3%)

Algorithm
egg-herbie
Rules
679×fma-def_binary64
509×times-frac_binary64
380×distribute-rgt-in_binary64
364×distribute-lft-in_binary64
170×*-commutative_binary64
Counts
238 → 249
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
06089613
120448608
255268608

prune371.0ms (9.1%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2490249
Fresh000
Picked011
Done033
Total2494253
Error
0b
Counts
253 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
32.2b
(*.f64 (sqrt.f64 d1) (*.f64 (sqrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
26.2b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
32.7b
(/.f64 (*.f64 d1 (+.f64 27 (pow.f64 (+.f64 d2 d3) 3))) (+.f64 (*.f64 3 3) (-.f64 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)) (*.f64 3 (+.f64 d2 d3)))))
Compiler

Compiled 13627 to 7593 computations (44.3% saved)

regimes508.0ms (12.5%)

Accuracy

Total 0.1b remaining (82.2%)

Threshold costs 0.1b (82.2%)

Counts
95 → 1
Compiler

Compiled 7868 to 5260 computations (33.1% saved)

simplify4.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11110
21110

end135.0ms (3.3%)

Remove

(sort d2 d3)

Compiler

Compiled 114 to 73 computations (36% saved)

Profiling

Loading profile data...