Details

Time bar (total: 2.9s)

analyze7.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%50%50%0
0%50%50%1
0%50%50%2
0%50%50%3
37.5%12.5%50%4
43.7%6.2%50%5
46.9%3.1%50%6
48.4%1.6%50%7
49.2%0.8%50%8
49.6%0.4%50%9
49.8%0.2%50%10
49.9%0.1%50%11
49.9%0%50%12
50%0%50%13
50%0%50%14
Compiler

Compiled 29 to 19 computations (34.5% saved)

sample1.4s (49.9%)

Results
1.1s8256×body128valid
Compiler

Compiled 84 to 55 computations (34.5% saved)

simplify57.0ms (2%)

Algorithm
egg-herbie
Rules
581×associate-/r*_binary64
510×distribute-rgt-in_binary64
489×distribute-lft-in_binary64
463×fma-neg_binary64
415×associate-/r/_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01131
14026
218517
391513
4234013
5445513
6495813
7507713

prune4.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.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
44.3b
(/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1))
Compiler

Compiled 107 to 73 computations (31.8% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
0.6b
(/.f64 1 (*.f64 i i))

series5.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
2.0ms
(/.f64 1 (*.f64 i i))

rewrite15.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
37×add-sqr-sqrt_binary64
35×times-frac_binary64
33×*-un-lft-identity_binary64
17×add-cube-cbrt_binary64
15×add-exp-log_binary64
Counts
2 → 85
Calls

2 calls:

8.0ms
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
3.0ms
(/.f64 1 (*.f64 i i))

simplify121.0ms (4.2%)

Algorithm
egg-herbie
Rules
484×cancel-sign-sub-inv_binary64
484×fma-neg_binary64
262×associate-/l/_binary64
260×unsub-neg_binary64
197×neg-mul-1_binary64
Counts
109 → 114
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01571670
13041577
27011474
318551474
442051414
548871414
649991414
748671414

prune127.0ms (4.4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New1113114
Fresh011
Picked101
Done000
Total1124116
Error
0b
Counts
116 → 4
Alt Table
StatusErrorProgram
44.3b
(/.f64 (/.f64 (*.f64 (*.f64 i i) (*.f64 i i)) (*.f64 (*.f64 2 i) (*.f64 2 i))) (-.f64 (*.f64 (*.f64 2 i) (*.f64 2 i)) 1))
0.2b
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
0.1b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.2b
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))
Compiler

Compiled 1911 to 1434 computations (25% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.1b
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
0.1b
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))

series8.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

3.0ms
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
2.0ms
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))
2.0ms
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))

rewrite48.0ms (1.7%)

Algorithm
rewrite-expression-head
Rules
108×add-sqr-sqrt_binary64
96×*-un-lft-identity_binary64
96×times-frac_binary64
47×add-cube-cbrt_binary64
30×associate-*r*_binary64
Counts
3 → 167
Calls

3 calls:

23.0ms
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
7.0ms
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
6.0ms
(/.f64 1/2 (+.f64 2 (/.f64 1 i)))

simplify125.0ms (4.4%)

Algorithm
egg-herbie
Rules
499×associate-/l*_binary64
456×fma-def_binary64
288×associate-/l/_binary64
277×fma-neg_binary64
200×associate-/r*_binary64
Counts
203 → 242
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02594188
16973891
220913770
346113768
450103768

prune263.0ms (9.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2411242
Fresh123
Picked011
Done000
Total2424246
Error
0b
Counts
246 → 4
Alt Table
StatusErrorProgram
0.7b
(*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.2b
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
0.1b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.2b
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))
Compiler

Compiled 5860 to 5064 computations (13.6% saved)

localize5.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
0.6b
(/.f64 4 (*.f64 i i))

series6.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

3.0ms
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
3.0ms
(/.f64 4 (*.f64 i i))

rewrite16.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
31×add-sqr-sqrt_binary64
25×times-frac_binary64
23×*-un-lft-identity_binary64
15×add-cube-cbrt_binary64
11×add-exp-log_binary64
Counts
2 → 70
Calls

2 calls:

7.0ms
(/.f64 4 (*.f64 i i))
5.0ms
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))

simplify97.0ms (3.4%)

Algorithm
egg-herbie
Rules
497×cancel-sign-sub-inv_binary64
466×fma-neg_binary64
420×associate-/l/_binary64
255×div-sub_binary64
225×neg-mul-1_binary64
Counts
94 → 97
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01351381
12641308
26171298
317711298
442431298
549501298

prune72.0ms (2.5%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New97097
Fresh022
Picked011
Done011
Total974101
Error
0b
Counts
101 → 4
Alt Table
StatusErrorProgram
0.7b
(*.f64 (/.f64 (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.2b
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
0.1b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
0.2b
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))
Compiler

Compiled 1646 to 1234 computations (25% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))

series13.0ms (0.5%)

Counts
1 → 12
Calls

1 calls:

13.0ms
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))

rewrite8.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
33×add-sqr-sqrt_binary64
21×*-un-lft-identity_binary64
21×times-frac_binary64
13×add-cube-cbrt_binary64
12×difference-of-squares_binary64
Counts
1 → 47
Calls

1 calls:

5.0ms
(/.f64 1/4 (-.f64 4 (pow.f64 i -2)))

simplify92.0ms (3.2%)

Algorithm
egg-herbie
Rules
490×fma-neg_binary64
422×cancel-sign-sub-inv_binary64
390×times-frac_binary64
288×associate-/l*_binary64
224×div-sub_binary64
Counts
59 → 74
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01371059
12741013
2620989
31604947
44381947
54877947
64896947

prune64.0ms (2.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New73174
Fresh101
Picked101
Done022
Total75378
Error
0b
Counts
78 → 3
Alt Table
StatusErrorProgram
0.3b
(*.f64 (*.f64 (cbrt.f64 1/4) (cbrt.f64 1/4)) (/.f64 (cbrt.f64 1/4) (-.f64 4 (pow.f64 i -2))))
0.2b
(/.f64 1 (-.f64 16 (/.f64 4 (*.f64 i i))))
0.1b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
Compiler

Compiled 1200 to 1039 computations (13.4% saved)

regimes191.0ms (6.7%)

Accuracy

Total 0.1b remaining (86.4%)

Threshold costs 0.1b (86.4%)

Counts
93 → 1
Compiler

Compiled 2678 to 2243 computations (16.2% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
distribute-neg-frac_binary64
neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11722
22322
32522
42622
52422

end69.0ms (2.4%)

Compiler

Compiled 73 to 64 computations (12.3% saved)

Profiling

Loading profile data...