Details

Time bar (total: 8.9s)

analyze497.0ms (5.6%)

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)

sample6.3s (71%)

Results
3.2s4969×body1024valid
1.1s2020×body1024invalid
701.0ms1737×body512valid
420.0ms441×body2048valid
358.0ms1049×body512invalid
199.0ms688×body256valid
126.0ms509×body256invalid
106.0ms691×body128invalid
64.0ms421×body128valid
Compiler

Compiled 30 to 24 computations (20% saved)

preprocess39.0ms (0.4%)

Algorithm
egg-herbie
Rules
692×fma-def_binary64
564×times-frac_binary64
454×fma-neg_binary64
227×associate-/l*_binary64
166×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01936
14036
29536
325536
453934
591234
6181234
7375134
022
Stop Event
saturated
node limit
Compiler

Compiled 14 to 11 computations (21.4% saved)

simplify22.0ms (0.3%)

Algorithm
egg-herbie
Rules
623×associate-/l*_binary64
462×times-frac_binary64
358×fma-neg_binary64
346×fma-def_binary64
322×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01218
12318
25218
313218
428117
547317
692917
7237617
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
57.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
57.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)

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series17.0ms (0.2%)

Counts
2 → 36
Calls

9 calls:

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

rewrite50.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
313×prod-diff_binary64
198×fma-def_binary64
178×expm1-udef_binary64
178×log1p-udef_binary64
152×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01228
125224
2336420
Stop Event
node limit
Counts
2 → 110

simplify44.0ms (0.5%)

Algorithm
egg-herbie
Rules
575×fma-def_binary64
428×sub-neg_binary64
236×associate-*l*_binary64
222×associate-*r*_binary64
191×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
095753
1285735
2975706
34287706
Stop Event
node limit
Counts
146 → 138

prune68.0ms (0.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1362138
Fresh000
Picked011
Done000
Total1363139
Error
0.1b
Counts
139 → 3
Alt Table
StatusErrorProgram
57.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
44.7b
(sqrt.f64 (pow.f64 (*.f64 (*.f64 2 (sinh.f64 im)) (*.f64 1/2 (cos.f64 re))) 2))
1.3b
(neg.f64 (+.f64 (*.f64 (cos.f64 re) im) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
Compiler

Compiled 2651 to 1454 computations (45.2% saved)

localize14.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5)))
0.0b
(*.f64 (cos.f64 re) (pow.f64 im 3))
0.1b
(*.f64 (cos.f64 re) im)
0.1b
(*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3)))

series56.0ms (0.6%)

Counts
4 → 16
Calls

24 calls:

4.0ms
(*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5)))
re
inf
4.0ms
(*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5)))
re
-inf
4.0ms
(*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5)))
im
0
4.0ms
(*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3)))
re
inf
3.0ms
(*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3)))
re
-inf

rewrite54.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
715×log-prod_binary64
260×expm1-udef_binary64
260×log1p-udef_binary64
228×log-pow_binary64
150×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01539
131439
2357439
Stop Event
node limit
Counts
4 → 68

simplify35.0ms (0.4%)

Algorithm
egg-herbie
Rules
498×associate-*l*_binary64
484×associate-*r*_binary64
422×fma-def_binary64
352×unswap-sqr_binary64
346×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
067394
1208347
2816291
34260291
Stop Event
node limit
Counts
84 → 96

prune97.0ms (1.1%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New92496
Fresh011
Picked011
Done011
Total92799
Error
0.1b
Counts
99 → 7
Alt Table
StatusErrorProgram
34.7b
(neg.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) im)) 2) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.5b
(neg.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
27.5b
(neg.f64 (+.f64 (*.f64 (cos.f64 re) im) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 (pow.f64 im 5) (-.f64 (fma.f64 (pow.f64 re 4) 1/2880 1/120) (fma.f64 (pow.f64 re 6) 1/86400 (*.f64 re (*.f64 re 1/240))))))))
57.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
44.7b
(sqrt.f64 (pow.f64 (*.f64 (*.f64 2 (sinh.f64 im)) (*.f64 1/2 (cos.f64 re))) 2))
1.3b
(neg.f64 (+.f64 (*.f64 (cos.f64 re) im) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
42.3b
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (pow.f64 (cos.f64 re) 3) (pow.f64 im 3))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
Compiler

Compiled 3138 to 2015 computations (35.8% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 re) im)
0.1b
(*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3)))
0.6b
(cbrt.f64 (*.f64 (cos.f64 re) im))
0.7b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3)

series153.0ms (1.7%)

Counts
2 → 24
Calls

12 calls:

29.0ms
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3)
re
-inf
28.0ms
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3)
re
inf
25.0ms
(cbrt.f64 (*.f64 (cos.f64 re) im))
re
-inf
24.0ms
(cbrt.f64 (*.f64 (cos.f64 re) im))
re
inf
18.0ms
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3)
im
-inf

rewrite36.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
596×log1p-expm1-u_binary64
596×expm1-log1p-u_binary64
319×log-prod_binary64
121×expm1-udef_binary64
121×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
115914
2167414
Stop Event
node limit
Counts
2 → 63

simplify36.0ms (0.4%)

Algorithm
egg-herbie
Rules
535×fma-neg_binary64
356×*-commutative_binary64
330×distribute-lft-neg-in_binary64
329×distribute-rgt-neg-in_binary64
191×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
043272
1124265
2409248
31837244
44903244
Stop Event
node limit
Counts
87 → 79

prune113.0ms (1.3%)

Pruning

10 alts after pruning (7 fresh and 3 done)

PrunedKeptTotal
New1225127
Fresh224
Picked011
Done022
Total12410134
Error
0.0b
Counts
134 → 10
Alt Table
StatusErrorProgram
1.8b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) im)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
34.7b
(neg.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) im)) 2) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.6b
(neg.f64 (+.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.5b
(neg.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.9b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cos.f64 re) im))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cos.f64 re) im))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
57.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
44.7b
(sqrt.f64 (pow.f64 (*.f64 (*.f64 2 (sinh.f64 im)) (*.f64 1/2 (cos.f64 re))) 2))
36.9b
(neg.f64 (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (cos.f64 re))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
1.3b
(neg.f64 (+.f64 (*.f64 (cos.f64 re) im) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.6b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (cos.f64 re))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
Compiler

Compiled 4492 to 2779 computations (38.1% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3)))
0.2b
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) im))
0.2b
(pow.f64 (cbrt.f64 (cos.f64 re)) 2)
0.3b
(cbrt.f64 (cos.f64 re))

series157.0ms (1.8%)

Counts
3 → 48
Calls

12 calls:

53.0ms
(cbrt.f64 (cos.f64 re))
re
-inf
49.0ms
(cbrt.f64 (cos.f64 re))
re
inf
23.0ms
(pow.f64 (cbrt.f64 (cos.f64 re)) 2)
re
inf
22.0ms
(pow.f64 (cbrt.f64 (cos.f64 re)) 2)
re
-inf
3.0ms
(*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) im))
im
-inf

rewrite41.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
708×log1p-expm1-u_binary64
708×expm1-log1p-u_binary64
147×expm1-udef_binary64
147×log1p-udef_binary64
85×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
117919
2203819
Stop Event
node limit
Counts
3 → 57

simplify36.0ms (0.4%)

Algorithm
egg-herbie
Rules
663×cancel-sign-sub-inv_binary64
422×fma-neg_binary64
403×sub-neg_binary64
255×*-commutative_binary64
211×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
055398
1154397
2432385
31637383
44680383
Stop Event
node limit
Counts
105 → 80

prune185.0ms (2.1%)

Pruning

12 alts after pruning (9 fresh and 3 done)

PrunedKeptTotal
New1313134
Fresh066
Picked101
Done033
Total13212144
Error
0.0b
Counts
144 → 12
Alt Table
StatusErrorProgram
2.6b
(neg.f64 (+.f64 (*.f64 (cbrt.f64 (cos.f64 re)) (*.f64 (cbrt.f64 im) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.5b
(neg.f64 (+.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 3) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
44.7b
(sqrt.f64 (pow.f64 (*.f64 (*.f64 2 (sinh.f64 im)) (*.f64 1/2 (cos.f64 re))) 2))
1.8b
(neg.f64 (+.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2))) 1) (*.f64 (cbrt.f64 (cos.f64 re)) im)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
1.3b
(neg.f64 (+.f64 (*.f64 (cos.f64 re) im) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
16.6b
(neg.f64 (+.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 (log.f64 (cos.f64 re)) 1/3)) 2) (*.f64 (cbrt.f64 (cos.f64 re)) im)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
34.7b
(neg.f64 (+.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 re) im)) 2) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.9b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cos.f64 re) im))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 (cos.f64 re) im))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 re) im)) 2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
57.0b
(*.f64 (*.f64 1/2 (cos.f64 re)) (-.f64 (exp.f64 (-.f64 0 im)) (exp.f64 im)))
16.7b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 re)) 2) (*.f64 (pow.f64 (pow.f64 (cos.f64 re) 1/6) 2) im)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
36.9b
(neg.f64 (+.f64 (*.f64 (sqrt.f64 im) (*.f64 (sqrt.f64 im) (cos.f64 re))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
2.6b
(neg.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 im) 2) (*.f64 (cbrt.f64 im) (cos.f64 re))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 re) (pow.f64 im 3))) (*.f64 1/120 (*.f64 (cos.f64 re) (pow.f64 im 5))))))
Compiler

Compiled 4892 to 2937 computations (40% saved)

regimes541.0ms (6.1%)

Accuracy

Total 0.7b remaining (94%)

Threshold costs 0.7b (94%)

Counts
78 → 1
Compiler

Compiled 13559 to 9456 computations (30.3% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
13×+-commutative_binary64
11×sub-neg_binary64
11×neg-sub0_binary64
11×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01836
13236
25034
38034
410434
511634
612234
712434
Stop Event
saturated

end243.0ms (2.7%)

Stop Event
fuel
Compiler

Compiled 402 to 276 computations (31.3% saved)

Profiling

Loading profile data...