Details

Time bar (total: 3.4s)

analyze1.2s (35.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%98.3%1.7%9
0%96.3%3.7%10
0.8%94.8%4.4%11
0.8%93.5%5.7%12
1%92.1%7%13
1.9%90.9%7.3%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample1.5s (45.5%)

Symmetry

(sort d2 d3)

Results
901.0ms8256×body128valid
558.0ms1112×body8192exit
34.0ms310×body128invalid
Compiler

Compiled 21 to 13 computations (38.1% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
fma-def_binary64
*-commutative_binary64
+-commutative_binary64
distribute-lft-out_binary64
distribute-rgt-out_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
077
1137
2187
3187

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 51 to 30 computations (41.2% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series8.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

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

rewrite4.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
add-log-exp_binary64
+-commutative_binary64
distribute-lft-out_binary64
flip-+_binary64
*-un-lft-identity_binary64
Counts
1 → 15
Calls

1 calls:

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

simplify76.0ms (2.2%)

Algorithm
egg-herbie
Rules
791×unsub-neg_binary64
551×distribute-rgt-out_binary64
343×distribute-rgt-in_binary64
309×distribute-lft-in_binary64
288×unswap-sqr_binary64
Counts
51 → 28
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
034420
1116402
2419401
31259398
42596398
53843398
64403398
75351398

prune15.0ms (0.4%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New26228
Fresh101
Picked101
Done000
Total28230
Error
0.0b
Counts
30 → 2
Alt Table
StatusErrorProgram
30.0b
(*.f64 (sqrt.f64 (+.f64 (*.f64 d1 d2) (*.f64 d1 d3))) (sqrt.f64 (+.f64 (*.f64 d1 d2) (*.f64 d1 d3))))
0.0b
(fma.f64 d1 d2 (*.f64 d1 d3))
Compiler

Compiled 395 to 109 computations (72.4% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

series8.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

8.0ms
(fma.f64 d1 d2 (*.f64 d1 d3))

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 d1 d2 (*.f64 d1 d3))

simplify86.0ms (2.6%)

Algorithm
egg-herbie
Rules
811×fma-def_binary64
773×distribute-rgt-in_binary64
765×distribute-lft-in_binary64
405×*-commutative_binary64
380×distribute-rgt-out_binary64
Counts
46 → 22
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020346
126331
278331
3295331
4778331
52919331
63117331
73288331
83563331
94329331
104791331

prune10.0ms (0.3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New21122
Fresh101
Picked011
Done000
Total22224
Error
0.0b
Counts
24 → 2
Alt Table
StatusErrorProgram
30.0b
(*.f64 (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))) (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))))
0.0b
(fma.f64 d1 d2 (*.f64 d1 d3))
Compiler

Compiled 252 to 66 computations (73.8% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 d1 d2 (*.f64 d1 d3))
0.2b
(*.f64 (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))) (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))))
4.2b
(sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3)))

series102.0ms (3%)

Counts
2 → 44
Calls

2 calls:

93.0ms
(sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3)))
8.0ms
(*.f64 (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))) (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))))

rewrite13.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt_binary64
21×sqrt-prod_binary64
18×pow1_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
Counts
2 → 68
Calls

2 calls:

7.0ms
(*.f64 (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))) (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))))
1.0ms
(sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3)))

simplify65.0ms (1.9%)

Algorithm
egg-herbie
Rules
706×distribute-lft-in_binary64
706×distribute-rgt-in_binary64
455×associate-*l*_binary64
350×associate-*r*_binary64
216×cancel-sign-sub-inv_binary64
Counts
112 → 107
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01021379
12091241
25951197
320611169
453221169

prune68.0ms (2%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1890189
Fresh000
Picked011
Done011
Total1892191
Error
0.0b
Counts
191 → 2
Alt Table
StatusErrorProgram
30.0b
(*.f64 (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))) (sqrt.f64 (fma.f64 d1 d2 (*.f64 d1 d3))))
0.0b
(fma.f64 d1 d2 (*.f64 d1 d3))
Compiler

Compiled 3856 to 735 computations (80.9% saved)

regimes99.0ms (2.9%)

Accuracy

Total 0.0b remaining (6.1%)

Threshold costs 0.0b (6.1%)

Counts
21 → 1
Compiler

Compiled 1110 to 648 computations (41.6% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
178
278

end48.0ms (1.4%)

Remove

(sort d2 d3)

Compiler

Compiled 63 to 32 computations (49.2% saved)

Profiling

Loading profile data...