Details

Time bar (total: 2.7s)

analyze6.0ms (0.2%)

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

Compiled 22 to 17 computations (22.7% saved)

sample1.1s (42.3%)

Results
987.0ms8256×body128valid
0.0msbody128invalid
Compiler

Compiled 65 to 50 computations (23.1% saved)

simplify120.0ms (4.5%)

Algorithm
egg-herbie
Rules
1332×fma-def_binary64
889×associate-/r*_binary64
605×neg-sub0_binary64
599×neg-mul-1_binary64
576×fma-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01731
14228
210226
326126
468426
5108824
6180124
7354124
8391424
9400224
10441624
11440924
12441524
13515924

prune4.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
1.0b
(/.f64 4 (*.f64 (*.f64 (*.f64 3 (PI.f64)) (-.f64 1 (*.f64 v v))) (sqrt.f64 (-.f64 2 (*.f64 6 (*.f64 v v))))))
0.0b
(/.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
Compiler

Compiled 113 to 85 computations (24.8% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (PI.f64) (fma.f64 v v -1))
0.0b
(sqrt.f64 (fma.f64 v (*.f64 v -6) 2))
0.0b
(/.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
1.0b
(/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))

series32.0ms (1.2%)

Counts
4 → 48
Calls

4 calls:

20.0ms
(/.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
5.0ms
(/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))
4.0ms
(sqrt.f64 (fma.f64 v (*.f64 v -6) 2))
3.0ms
(*.f64 (PI.f64) (fma.f64 v v -1))

rewrite64.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
251×expm1-udef_binary64
251×log1p-udef_binary64
216×log-pow_binary64
151×log-div_binary64
142×add-sqr-sqrt_binary64
Counts
4 → 107
Calls

4 calls:

62.0ms
(*.f64 (PI.f64) (fma.f64 v v -1))
62.0ms
(sqrt.f64 (fma.f64 v (*.f64 v -6) 2))
62.0ms
(/.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
62.0ms
(/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01455
129355
2350455
3488955
000
100

simplify57.0ms (2.1%)

Algorithm
egg-herbie
Rules
762×fma-def_binary64
741×times-frac_binary64
293×cancel-sign-sub-inv_binary64
187×fma-neg_binary64
172×sub-neg_binary64
Counts
155 → 172
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02161794
16911745
224071699
350381699

prune227.0ms (8.5%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1702172
Fresh101
Picked101
Done000
Total1722174
Error
0b
Counts
174 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
0.0b
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))
Compiler

Compiled 4693 to 3556 computations (24.2% saved)

localize11.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (PI.f64) (fma.f64 v v -1))
0.0b
(sqrt.f64 (fma.f64 v (*.f64 v -6) 2))
0.0b
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))
0.0b
(/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))

series61.0ms (2.3%)

Counts
2 → 24
Calls

2 calls:

41.0ms
(/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
20.0ms
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))

rewrite68.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
267×expm1-udef_binary64
267×log1p-udef_binary64
235×log-pow_binary64
154×add-sqr-sqrt_binary64
144×add-cbrt-cube_binary64
Counts
2 → 56
Calls

2 calls:

67.0ms
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))
67.0ms
(/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01651
132646
2366946
3482946
000
100

simplify60.0ms (2.3%)

Algorithm
egg-herbie
Rules
807×times-frac_binary64
793×fma-def_binary64
294×cancel-sign-sub-inv_binary64
266×sub-neg_binary64
167×fma-neg_binary64
Counts
80 → 104
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01941973
16501963
225551926
351221926

prune148.0ms (5.5%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1750175
Fresh011
Picked011
Done000
Total1752177
Error
0b
Counts
177 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
0.0b
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))
Compiler

Compiled 5548 to 4338 computations (21.8% saved)

localize13.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
1.0b
(/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))
1.0b
(log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))))
1.0b
(expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))

series103.0ms (3.9%)

Counts
3 → 36
Calls

3 calls:

54.0ms
(expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))
42.0ms
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
7.0ms
(log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))))

rewrite94.0ms (3.5%)

Algorithm
batch-egg-rewrite
Rules
264×expm1-udef_binary64
264×log1p-udef_binary64
230×log-pow_binary64
158×prod-diff_binary64
149×add-sqr-sqrt_binary64
Counts
3 → 97
Calls

3 calls:

91.0ms
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
91.0ms
(log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1)))))
91.0ms
(expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01650
131050
2362950
3499050
4504850
000
100

simplify68.0ms (2.5%)

Algorithm
egg-herbie
Rules
592×associate-/l*_binary64
271×cancel-sign-sub-inv_binary64
233×fma-def_binary64
191×sub-neg_binary64
175×fma-neg_binary64
Counts
133 → 149
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02452159
17902133
228542019
353692019

prune163.0ms (6.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1880188
Fresh000
Picked011
Done011
Total1882190
Error
0b
Counts
190 → 2
Alt Table
StatusErrorProgram
0.0b
(/.f64 (log1p.f64 (expm1.f64 (/.f64 -4/3 (*.f64 (PI.f64) (fma.f64 v v -1))))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2)))
0.0b
(*.f64 -4/3 (/.f64 (/.f64 1 (*.f64 (PI.f64) (fma.f64 v v -1))) (sqrt.f64 (fma.f64 v (*.f64 v -6) 2))))
Compiler

Compiled 5650 to 4275 computations (24.3% saved)

regimes95.0ms (3.6%)

Accuracy

Total 0.0b remaining (38.5%)

Threshold costs 0.0b (38.5%)

Counts
30 → 1
Compiler

Compiled 2172 to 1722 computations (20.7% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01424
11724
21724

end132.0ms (4.9%)

Compiler

Compiled 72 to 56 computations (22.2% saved)

Profiling

Loading profile data...