Details

Time bar (total: 4.7s)

analyze1.7s (36.8%)

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.8s (38.7%)

Symmetry

(sort d2 d3)

Results
905.0ms7736×body128valid
689.0ms1138×body8192exit
64.0ms189×body1024valid
56.0ms351×body128invalid
52.0ms201×body512valid
23.0ms130×body256valid
Compiler

Compiled 29 to 19 computations (34.5% saved)

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

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series8.0ms (0.2%)

Counts
1 → 28
Calls

1 calls:

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

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

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

simplify71.0ms (1.5%)

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

prune36.0ms (0.8%)

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)))
0.1b
(+.f64 (*.f64 3 d1) (*.f64 (+.f64 d2 d3) d1))
1.5b
(*.f64 (*.f64 (cbrt.f64 d1) (cbrt.f64 d1)) (*.f64 (cbrt.f64 d1) (+.f64 3 (+.f64 d2 d3))))
26.9b
(/.f64 (*.f64 d1 (-.f64 9 (*.f64 (+.f64 d2 d3) (+.f64 d2 d3)))) (-.f64 3 (+.f64 d2 d3)))
1.3b
(*.f64 (*.f64 (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3))))) (cbrt.f64 (*.f64 d1 (+.f64 3 (+.f64 d2 d3)))))
19.2b
(*.f64 (*.f64 d1 (sqrt.f64 (+.f64 3 (+.f64 d2 d3)))) (sqrt.f64 (+.f64 3 (+.f64 d2 d3))))
Compiler

Compiled 815 to 453 computations (44.4% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series16.0ms (0.3%)

Counts
2 → 72
Calls

2 calls:

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

rewrite10.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
associate-*l*_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 38
Calls

2 calls:

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

simplify83.0ms (1.8%)

Algorithm
egg-herbie
Rules
621×distribute-rgt-in_binary64
596×distribute-lft-in_binary64
580×associate-*r*_binary64
543×sub-neg_binary64
401×fma-def_binary64
Counts
110 → 69
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0801036
12361003
28661002
33337999
44712999
55323999

prune38.0ms (0.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New67269
Fresh404
Picked101
Done011
Total72375
Error
0b
Counts
75 → 3
Alt Table
StatusErrorProgram
32.0b
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))) (sqrt.f64 (*.f64 d1 (+.f64 d2 (+.f64 3 d3)))))
0.0b
(fma.f64 3 d1 (*.f64 (+.f64 d2 d3) d1))
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Compiler

Compiled 1055 to 474 computations (55.1% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series10.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

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

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

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

simplify93.0ms (2%)

Algorithm
egg-herbie
Rules
674×unswap-sqr_binary64
473×associate-*l*_binary64
428×+-commutative_binary64
387×distribute-rgt-out_binary64
358×associate-/l/_binary64
Counts
46 → 28
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027479
148457
2112457
3532457
41315457
52331457
62722457
73156457
83738457
94861457
105031457

prune31.0ms (0.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New62163
Fresh101
Picked011
Done011
Total63366
Error
0b
Counts
66 → 3
Alt Table
StatusErrorProgram
29.4b
(fma.f64 3 d1 (*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))))
0.0b
(fma.f64 3 d1 (*.f64 (+.f64 d2 d3) d1))
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Compiler

Compiled 855 to 339 computations (60.4% saved)

localize7.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series188.0ms (4%)

Counts
4 → 97
Calls

4 calls:

102.0ms
(sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))
44.0ms
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))))
31.0ms
(fma.f64 3 d1 (*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))))
10.0ms
(*.f64 d1 (+.f64 d2 d3))

rewrite29.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
58×pow1_binary64
30×sqrt-pow1_binary64
22×pow-prod-down_binary64
18×associate-*r/_binary64
14×sqrt-div_binary64
Counts
4 → 109
Calls

4 calls:

13.0ms
(*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))))
5.0ms
(*.f64 d1 (+.f64 d2 d3))
4.0ms
(sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))
0.0ms
(fma.f64 3 d1 (*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))))

simplify113.0ms (2.4%)

Algorithm
egg-herbie
Rules
512×times-frac_binary64
400×fma-def_binary64
398×distribute-rgt-in_binary64
381×distribute-lft-in_binary64
340×*-commutative_binary64
Counts
206 → 162
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01682277
13602167
212772127
335742086
447492002
549572002

prune100.0ms (2.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2220222
Fresh000
Picked011
Done022
Total2223225
Error
0b
Counts
225 → 3
Alt Table
StatusErrorProgram
29.4b
(fma.f64 3 d1 (*.f64 (sqrt.f64 (*.f64 d1 (+.f64 d2 d3))) (sqrt.f64 (*.f64 d1 (+.f64 d2 d3)))))
0.0b
(fma.f64 3 d1 (*.f64 (+.f64 d2 d3) d1))
0.1b
(*.f64 d1 (+.f64 3 (+.f64 d2 d3)))
Compiler

Compiled 4907 to 1424 computations (71% saved)

regimes228.0ms (4.8%)

Accuracy

Total 0.0b remaining (45%)

Threshold costs 0.0b (45%)

Counts
59 → 1
Compiler

Compiled 3688 to 2424 computations (34.3% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
11011
21011

end63.0ms (1.3%)

Remove

(sort d2 d3)

Compiler

Compiled 84 to 51 computations (39.3% saved)

Profiling

Loading profile data...