Details

Time bar (total: 13.8s)

analyze567.0ms (4.1%)

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
50%50%0.1%5
50%50%0.1%6
50%37.5%12.6%7
50%37.5%12.6%8
50%31.2%18.8%9
50%31.2%18.8%10
50%28.1%22%11
50%28.1%22%12
50%26.5%23.5%13
50%26.5%23.5%14
Compiler

Compiled 15 to 12 computations (20% saved)

sample10.2s (74%)

Results
5.3s4986×body1024valid
1.7s2020×body1024invalid
1.1s1735×body512valid
673.0ms449×body2048valid
574.0ms1005×body512invalid
279.0ms684×body256valid
216.0ms544×body256invalid
156.0ms710×body128invalid
88.0ms402×body128valid
Compiler

Compiled 44 to 35 computations (20.5% saved)

simplify104.0ms (0.8%)

Algorithm
egg-herbie
Rules
626×associate-/l*_binary64
509×div-sub_binary64
462×times-frac_binary64
386×sub-neg_binary64
367×associate-/r*_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01218
12218
24918
311118
420817
536217
669217
7151317
8372617
9428717
10485717
11474917

prune5.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
58.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
58.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
Compiler

Compiled 53 to 38 computations (28.3% saved)

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 re)
0.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
6.4b
(-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))

series37.0ms (0.3%)

Counts
3 → 40
Calls

3 calls:

31.0ms
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
4.0ms
(-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
3.0ms
(cos.f64 re)

rewrite150.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
524×prod-diff_binary64
473×log-prod_binary64
198×fma-def_binary64
178×expm1-udef_binary64
178×log1p-udef_binary64
Counts
3 → 138
Calls

3 calls:

145.0ms
(cos.f64 re)
145.0ms
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
145.0ms
(-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
125127
2246123
3488823
4531023
000
100

simplify116.0ms (0.8%)

Algorithm
egg-herbie
Rules
613×fma-def_binary64
469×sub-neg_binary64
397×distribute-rgt-neg-in_binary64
257×neg-mul-1_binary64
254×associate-*l*_binary64
Counts
178 → 173
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0106809
1309787
21026754
33725754
44666754
54962754

prune158.0ms (1.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1721173
Fresh000
Picked011
Done000
Total1722174
Error
0.1b
Counts
174 → 2
Alt Table
StatusErrorProgram
58.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
0.9b
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
Compiler

Compiled 3237 to 1809 computations (44.1% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 re)
0.1b
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.1b
(*.f64 (pow.f64 im 3) -1/6)

series46.0ms (0.3%)

Counts
2 → 36
Calls

2 calls:

40.0ms
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
5.0ms
(*.f64 (pow.f64 im 3) -1/6)

rewrite115.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
511×log-prod_binary64
367×fma-def_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
172×fma-neg_binary64
Counts
2 → 81
Calls

2 calls:

110.0ms
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
110.0ms
(*.f64 (pow.f64 im 3) -1/6)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01124
124220
2266120
3498220
4485020
000
100

simplify69.0ms (0.5%)

Algorithm
egg-herbie
Rules
389×fma-def_binary64
328×sub-neg_binary64
327×associate-*l*_binary64
282×associate-*r*_binary64
273×distribute-rgt-neg-in_binary64
Counts
117 → 97
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056549
1174545
2610523
32562519
44987519

prune168.0ms (1.2%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1206126
Fresh000
Picked011
Done011
Total1208128
Error
0.0b
Counts
128 → 8
Alt Table
StatusErrorProgram
19.4b
(*.f64 (pow.f64 (sqrt.f64 (cos.f64 re)) 2) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
58.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
1.1b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.9b
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.3b
(*.f64 (+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 re))))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.5b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 3) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.2b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 re)))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.0b
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 re))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
Compiler

Compiled 2425 to 1472 computations (39.3% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 re))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.1b
(*.f64 (pow.f64 im 3) -1/6)
0.2b
(log1p.f64 (expm1.f64 (cos.f64 re)))
0.6b
(expm1.f64 (cos.f64 re))

series49.0ms (0.4%)

Counts
3 → 48
Calls

3 calls:

41.0ms
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 re))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
5.0ms
(expm1.f64 (cos.f64 re))
3.0ms
(log1p.f64 (expm1.f64 (cos.f64 re)))

rewrite98.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
549×log-prod_binary64
379×fma-def_binary64
202×expm1-udef_binary64
202×log1p-udef_binary64
183×fma-neg_binary64
Counts
3 → 114
Calls

3 calls:

94.0ms
(*.f64 (log1p.f64 (expm1.f64 (cos.f64 re))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
94.0ms
(log1p.f64 (expm1.f64 (cos.f64 re)))
94.0ms
(expm1.f64 (cos.f64 re))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01325
126121
2285121
3517121
000
100

simplify104.0ms (0.7%)

Algorithm
egg-herbie
Rules
511×fma-def_binary64
456×sub-neg_binary64
388×distribute-rgt-neg-in_binary64
383×associate-*l*_binary64
370×distribute-lft-neg-in_binary64
Counts
162 → 145
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082673
1255661
2846633
33323624
44945624
55101624

prune424.0ms (3.1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1602162
Fresh145
Picked101
Done022
Total1628170
Error
0.0b
Counts
170 → 8
Alt Table
StatusErrorProgram
1.2b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 re)))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
2.1b
(*.f64 (log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 re))) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.1b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.9b
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.3b
(*.f64 (+.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 re)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 re))))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.5b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 3) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
58.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
19.4b
(*.f64 (log1p.f64 (pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 re))) 2)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
Compiler

Compiled 3187 to 1906 computations (40.2% saved)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.1b
(*.f64 (pow.f64 im 3) -1/6)
0.3b
(cbrt.f64 (pow.f64 (cos.f64 re) 3))
0.3b
(pow.f64 (cos.f64 re) 3)

series57.0ms (0.4%)

Counts
3 → 40
Calls

3 calls:

44.0ms
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
10.0ms
(pow.f64 (cos.f64 re) 3)
3.0ms
(cbrt.f64 (pow.f64 (cos.f64 re) 3))

rewrite107.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
561×log-prod_binary64
380×fma-def_binary64
200×expm1-udef_binary64
200×log1p-udef_binary64
177×log-pow_binary64
Counts
3 → 116
Calls

3 calls:

97.0ms
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
97.0ms
(cbrt.f64 (pow.f64 (cos.f64 re) 3))
97.0ms
(pow.f64 (cos.f64 re) 3)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01326
126522
2288122
3517022
000
100

simplify76.0ms (0.5%)

Algorithm
egg-herbie
Rules
473×fma-def_binary64
402×sub-neg_binary64
352×associate-*l*_binary64
347×distribute-rgt-neg-in_binary64
331×distribute-lft-neg-in_binary64
Counts
156 → 144
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075601
1230589
2765559
33015553
45208553

prune251.0ms (1.8%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1592161
Fresh145
Picked011
Done022
Total1609169
Error
0.0b
Counts
169 → 9
Alt Table
StatusErrorProgram
1.2b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 re)))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
2.1b
(*.f64 (log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (cos.f64 re))) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.1b
(*.f64 (cbrt.f64 (pow.f64 (cos.f64 re) 3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
0.9b
(*.f64 (cos.f64 re) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.1b
(*.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (pow.f64 (pow.f64 (cos.f64 re) 2) 1/3)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.5b
(*.f64 (cbrt.f64 (log.f64 (exp.f64 (pow.f64 (cos.f64 re) 3)))) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
1.5b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 3) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
58.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
19.4b
(*.f64 (log1p.f64 (pow.f64 (sqrt.f64 (expm1.f64 (cos.f64 re))) 2)) (+.f64 (neg.f64 im) (*.f64 (pow.f64 im 3) -1/6)))
Compiler

Compiled 3078 to 1913 computations (37.8% saved)

regimes539.0ms (3.9%)

Accuracy

Total 0.8b remaining (89.8%)

Threshold costs 0.8b (89.8%)

Counts
53 → 1
Compiler

Compiled 4929 to 3888 computations (21.1% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01319
11619
21619

end283.0ms (2%)

Compiler

Compiled 181 to 146 computations (19.3% saved)

Profiling

Loading profile data...