Details

Time bar (total: 9.9s)

analyze1.5s (14.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
12.5%87.3%0.2%9
18.7%81.1%0.2%10
21.8%67.1%11.1%11
21.8%67.1%11.1%12
32.7%56.1%11.1%13
35.1%53%11.9%14
Compiler

Compiled 20 to 15 computations (25% saved)

sample5.3s (53.1%)

Results
1.3s1795×body1024valid
1.3s2045×body1024invalid
755.0ms4520×body128valid
528.0ms1180×body512valid
427.0ms2666×body128invalid
420.0ms1039×body512invalid
213.0ms706×body256valid
143.0ms527×body256invalid
86.0ms55×body2048valid
Compiler

Compiled 59 to 44 computations (25.4% saved)

simplify28.0ms (0.3%)

Algorithm
egg-herbie
Rules
745×fma-def_binary64
464×fma-neg_binary64
394×times-frac_binary64
314×associate-*l*_binary64
236×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01522
12922
25522
312122
430622
577122
6201322
7383522
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
15.9b
Counts
3 → 1
Alt Table
StatusErrorProgram
15.9b
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2))) U)
Compiler

Compiled 69 to 45 computations (34.8% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2)))
0.2b
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2))) U)
7.0b
(-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))

series48.0ms (0.5%)

Counts
3 → 80
Calls

3 calls:

34.0ms
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2))) U)
11.0ms
(*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2)))
2.0ms
(-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))

rewrite105.0ms (1.1%)

Algorithm
egg-rewrite
batch-egg-rewrite
Rules
151×add-sqr-sqrt_binary64
141×log1p-expm1-u_binary64
141×expm1-log1p-u_binary64
140×add-cbrt-cube_binary64
140×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01430
129530
2440830
066
11306
221316
066
01418
129518
2440818
01418
01114
123614
2360814
01114
Stop Event
iter limit
unsound
iter limit
unsound
iter limit
unsound
unsound
Counts
3 → 29
Calls

3 calls:

105.0ms
(*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2)))
105.0ms
(fma.f64 J (*.f64 (-.f64 (exp.f64 l) (exp.f64 (neg.f64 l))) (cos.f64 (/.f64 K 2))) U)
105.0ms
(-.f64 (exp.f64 l) (exp.f64 (neg.f64 l)))

simplify42.0ms (0.4%)

Algorithm
egg-herbie
Rules
594×associate-*l*_binary64
445×associate-*r*_binary64
378×cancel-sign-sub-inv_binary64
357×associate--l+_binary64
303×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01632305
15351898
216461845
Stop Event
node limit
Counts
109 → 80

prune86.0ms (0.9%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New75580
Fresh000
Picked101
Done000
Total76581
Error
0.2b
Counts
81 → 5
Alt Table
StatusErrorProgram
30.3b
(*.f64 (sqrt.f64 (fma.f64 J (*.f64 (*.f64 2 (sinh.f64 l)) (cos.f64 (*.f64 K 1/2))) U)) (sqrt.f64 (fma.f64 J (*.f64 (*.f64 2 (sinh.f64 l)) (cos.f64 (*.f64 K 1/2))) U)))
0.4b
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
27.0b
(-.f64 (fma.f64 (exp.f64 l) J U) (/.f64 J (exp.f64 l)))
0.4b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
0.7b
(+.f64 (*.f64 2 (*.f64 l (*.f64 J (cos.f64 (*.f64 1/2 K))))) U)
Compiler

Compiled 2091 to 1249 computations (40.3% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))
0.0b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
0.1b
(*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))
0.1b
(*.f64 1/3 (pow.f64 l 3))

series111.0ms (1.1%)

Counts
4 → 108
Calls

4 calls:

48.0ms
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
41.0ms
(*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))
18.0ms
(*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))
3.0ms
(*.f64 1/3 (pow.f64 l 3))

rewrite66.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
304×expm1-udef_binary64
304×log1p-udef_binary64
172×add-sqr-sqrt_binary64
164×log1p-expm1-u_binary64
164×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01768
135566
2423966
Stop Event
node limit
Counts
4 → 83
Calls

4 calls:

64.0ms
(*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))
64.0ms
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
64.0ms
(*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))
64.0ms
(*.f64 1/3 (pow.f64 l 3))

simplify46.0ms (0.5%)

Algorithm
egg-herbie
Rules
934×fma-def_binary64
569×associate-*l*_binary64
511×cancel-sign-sub-inv_binary64
470×associate-*r*_binary64
439×associate--l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0992763
13132448
211172310
Stop Event
node limit
Counts
191 → 120

prune143.0ms (1.4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1173120
Fresh224
Picked011
Done000
Total1196125
Error
0.2b
Counts
125 → 6
Alt Table
StatusErrorProgram
24.5b
(/.f64 1 (/.f64 (-.f64 U (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) (-.f64 (*.f64 U U) (pow.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J)) 2))))
0.4b
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
0.7b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)))
24.6b
(+.f64 U (pow.f64 (sqrt.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) 2))
27.0b
(-.f64 (fma.f64 (exp.f64 l) J U) (/.f64 J (exp.f64 l)))
0.4b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
Compiler

Compiled 3352 to 2392 computations (28.6% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))
0.0b
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
0.1b
(*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2)))
0.1b
(*.f64 1/3 (pow.f64 l 3))

series72.0ms (0.7%)

Counts
3 → 84
Calls

3 calls:

51.0ms
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
18.0ms
(*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2)))
3.0ms
(fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))

rewrite53.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
300×prod-diff_binary64
265×expm1-udef_binary64
265×log1p-udef_binary64
151×add-sqr-sqrt_binary64
142×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01553
131153
2356153
Stop Event
node limit
Counts
3 → 63
Calls

3 calls:

51.0ms
(fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))
51.0ms
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
51.0ms
(*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2)))

simplify41.0ms (0.4%)

Algorithm
egg-herbie
Rules
854×fma-def_binary64
766×associate-*l*_binary64
566×associate-*r*_binary64
438×cancel-sign-sub-inv_binary64
396×associate--l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01082354
13191884
211951758
Stop Event
node limit
Counts
147 → 101

prune139.0ms (1.4%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1140114
Fresh044
Picked011
Done011
Total1146120
Error
0.2b
Counts
120 → 6
Alt Table
StatusErrorProgram
24.5b
(/.f64 1 (/.f64 (-.f64 U (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) (-.f64 (*.f64 U U) (pow.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J)) 2))))
0.4b
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
0.7b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)))
24.6b
(+.f64 U (pow.f64 (sqrt.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) 2))
27.0b
(-.f64 (fma.f64 (exp.f64 l) J U) (/.f64 J (exp.f64 l)))
0.4b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
Compiler

Compiled 2870 to 2075 computations (27.7% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3))
0.1b
(*.f64 1/3 (pow.f64 l 3))
0.6b
(pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)
13.6b
(cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))

series1.0s (10.2%)

Counts
3 → 84
Calls

3 calls:

543.0ms
(pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)
420.0ms
(cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))
52.0ms
(*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3))

rewrite53.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
266×expm1-udef_binary64
266×log1p-udef_binary64
238×prod-diff_binary64
152×add-sqr-sqrt_binary64
146×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01752
134252
2363552
Stop Event
node limit
Counts
3 → 76
Calls

3 calls:

52.0ms
(*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3))
52.0ms
(pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)
52.0ms
(cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3)))))

simplify53.0ms (0.5%)

Algorithm
egg-herbie
Rules
791×fma-def_binary64
322×cancel-sign-sub-inv_binary64
182×associate--l+_binary64
168×times-frac_binary64
137×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01753115
15172758
216402471
Stop Event
node limit
Counts
160 → 139

prune171.0ms (1.7%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New1520152
Fresh033
Picked011
Done022
Total1526158
Error
0.2b
Counts
158 → 6
Alt Table
StatusErrorProgram
24.5b
(/.f64 1 (/.f64 (-.f64 U (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) (-.f64 (*.f64 U U) (pow.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J)) 2))))
0.4b
(fma.f64 J (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (cos.f64 (/.f64 K 2))) U)
0.7b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (pow.f64 (cbrt.f64 (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))) 3)))
24.6b
(+.f64 U (pow.f64 (sqrt.f64 (*.f64 (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))) (*.f64 (cos.f64 (*.f64 1/2 K)) J))) 2))
27.0b
(-.f64 (fma.f64 (exp.f64 l) J U) (/.f64 J (exp.f64 l)))
0.4b
(+.f64 U (*.f64 (cos.f64 (*.f64 1/2 K)) (*.f64 J (fma.f64 2 l (*.f64 1/3 (pow.f64 l 3))))))
Compiler

Compiled 4541 to 3440 computations (24.2% saved)

regimes749.0ms (7.5%)

Accuracy

Total 0.3b remaining (52.5%)

Threshold costs 0.3b (52.5%)

Counts
81 → 1
Compiler

Compiled 17042 to 12961 computations (23.9% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01422
11622
Stop Event
saturated

end119.0ms (1.2%)

Compiler

Compiled 184 to 139 computations (24.5% saved)

Profiling

Loading profile data...