Details

Time bar (total: 2.7s)

analyze7.0ms (0.3%)

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.2s (45.5%)

Results
1.1s8256×body128valid
Compiler

Compiled 84 to 55 computations (34.5% saved)

simplify56.0ms (2.1%)

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.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
48.9b
(/.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/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
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.4b
(/.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.6%)

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:

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

simplify121.0ms (4.6%)

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

prune78.0ms (2.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1113114
Fresh101
Picked011
Done000
Total1124116
Error
0b
Counts
116 → 4
Alt Table
StatusErrorProgram
0.1b
(*.f64 (/.f64 1/2 (+.f64 2 (/.f64 1 i))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
1.4b
(/.f64 (/.f64 1/4 (*.f64 (cbrt.f64 (-.f64 4 (/.f64 1 (*.f64 i i)))) (cbrt.f64 (-.f64 4 (/.f64 1 (*.f64 i i)))))) (cbrt.f64 (-.f64 4 (/.f64 1 (*.f64 i i)))))
32.2b
(*.f64 -1/4 (pow.f64 i 2))
0.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
Compiler

Compiled 1903 to 1430 computations (24.9% saved)

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

series10.0ms (0.4%)

Counts
3 → 36
Calls

3 calls:

5.0ms
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
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)))

rewrite52.0ms (2%)

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:

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

simplify127.0ms (4.8%)

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

prune201.0ms (7.6%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2411242
Fresh112
Picked101
Done011
Total2433246
Error
0b
Counts
246 → 3
Alt Table
StatusErrorProgram
0.9b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
32.2b
(*.f64 -1/4 (pow.f64 i 2))
0.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
Compiler

Compiled 5834 to 5042 computations (13.6% saved)

localize15.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1/2 (-.f64 2 (/.f64 1 i)))
0.6b
(/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))
0.6b
(/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i))))
0.7b
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i)))))

series21.0ms (0.8%)

Counts
3 → 28
Calls

3 calls:

12.0ms
(/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))
7.0ms
(/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i))))
2.0ms
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i)))))

rewrite75.0ms (2.8%)

Algorithm
rewrite-expression-head
Rules
118×times-frac_binary64
115×*-un-lft-identity_binary64
113×add-sqr-sqrt_binary64
81×sqrt-prod_binary64
67×add-cube-cbrt_binary64
Counts
3 → 209
Calls

3 calls:

30.0ms
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i)))))
13.0ms
(/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i))))
8.0ms
(/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))

simplify154.0ms (5.8%)

Algorithm
egg-herbie
Rules
502×cancel-sign-sub-inv_binary64
463×associate-/r*_binary64
398×associate-/l*_binary64
327×associate-*l/_binary64
304×fma-def_binary64
Counts
237 → 248
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02386174
16155180
218655165
343624801
451844801

prune295.0ms (11.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New3130313
Fresh011
Picked011
Done011
Total3133316
Error
0b
Counts
316 → 3
Alt Table
StatusErrorProgram
0.9b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
32.2b
(*.f64 -1/4 (pow.f64 i 2))
0.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
Compiler

Compiled 10905 to 9638 computations (11.6% saved)

localize8.0ms (0.3%)

prune2.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done022
Total033
Error
0b
Counts
3 → 3
Alt Table
StatusErrorProgram
0.9b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (+.f64 2 (/.f64 1 i)))) (/.f64 1/2 (sqrt.f64 (+.f64 2 (/.f64 1 i))))) (/.f64 1/2 (-.f64 2 (/.f64 1 i))))
32.2b
(*.f64 -1/4 (pow.f64 i 2))
0.2b
(/.f64 1/4 (-.f64 4 (/.f64 1 (*.f64 i i))))
Compiler

Compiled 42 to 36 computations (14.3% saved)

regimes121.0ms (4.5%)

Accuracy

Total 0.1b remaining (92.6%)

Threshold costs 0.1b (92.6%)

Counts
60 → 1
Compiler

Compiled 2346 to 2019 computations (13.9% 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
01326
11926
22526
32726
42826
52626

end64.0ms (2.4%)

Compiler

Compiled 78 to 68 computations (12.8% saved)

Profiling

Loading profile data...