Details

Time bar (total: 2.9s)

analyze9.0ms (0.3%)

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 21 to 16 computations (23.8% saved)

sample1.4s (49.2%)

Results
1.3s8256×body128valid
0.0msbody128invalid
Compiler

Compiled 62 to 47 computations (24.2% saved)

simplify76.0ms (2.7%)

Algorithm
egg-herbie
Rules
750×div-sub_binary64
748×fma-neg_binary64
599×fma-def_binary64
502×associate-/l*_binary64
423×distribute-rgt-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01529
13729
28227
320127
452627
599125
6161425
7327325
8365325
9469425
10494225

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
Compiler

Compiled 73 to 56 computations (23.3% saved)

localize10.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

series23.0ms (0.8%)

Counts
3 → 36
Calls

3 calls:

11.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
7.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1)))
5.0ms
(sqrt.f64 (fma.f64 v (*.f64 v -3) 1))

rewrite60.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
629×log-prod_binary64
233×expm1-udef_binary64
233×log1p-udef_binary64
202×log-pow_binary64
134×add-sqr-sqrt_binary64
Counts
3 → 71
Calls

3 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01555
129253
2304953
3497953
000
100

simplify65.0ms (2.3%)

Algorithm
egg-herbie
Rules
716×fma-def_binary64
690×fma-neg_binary64
569×cancel-sign-sub-inv_binary64
444×times-frac_binary64
381×associate-/r*_binary64
Counts
107 → 135
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01331310
14441257
216281102
343721098
451831098

prune165.0ms (5.8%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1332135
Fresh000
Picked011
Done000
Total1333136
Error
0b
Counts
136 → 3
Alt Table
StatusErrorProgram
0.3b
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
0.0b
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 2 (fma.f64 v (*.f64 v -3) 1))))
Compiler

Compiled 3581 to 2977 computations (16.9% saved)

localize10.0ms (0.4%)

Local error

Found 2 expressions with local error:

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

series16.0ms (0.6%)

Counts
2 → 24
Calls

2 calls:

10.0ms
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 2 (fma.f64 v (*.f64 v -3) 1))))
6.0ms
(sqrt.f64 (*.f64 2 (fma.f64 v (*.f64 v -3) 1)))

rewrite121.0ms (4.2%)

Algorithm
batch-egg-rewrite
Rules
578×log-prod_binary64
219×expm1-udef_binary64
219×log1p-udef_binary64
198×pow3_binary64
187×log-pow_binary64
Counts
2 → 48
Calls

2 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01436
127336
2284536
3498936
4483436
000
100

simplify58.0ms (2%)

Algorithm
egg-herbie
Rules
578×fma-def_binary64
466×cancel-sign-sub-inv_binary64
382×associate-*l*_binary64
363×associate-*r*_binary64
258×associate-/r*_binary64
Counts
72 → 91
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0981016
1322968
21220849
34538849
45098849

prune184.0ms (6.5%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New91091
Fresh011
Picked011
Done011
Total91394
Error
0b
Counts
94 → 3
Alt Table
StatusErrorProgram
0.3b
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
0.0b
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 2 (fma.f64 v (*.f64 v -3) 1))))
Compiler

Compiled 2456 to 2052 computations (16.4% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
0.1b
(*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2)))
0.2b
(*.f64 (pow.f64 v 2) (sqrt.f64 2))

series15.0ms (0.5%)

Counts
3 → 3
Calls

3 calls:

6.0ms
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
5.0ms
(*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2)))
4.0ms
(*.f64 (pow.f64 v 2) (sqrt.f64 2))

rewrite98.0ms (3.4%)

Algorithm
batch-egg-rewrite
Rules
982×prod-diff_binary64
238×egg-rr
196×expm1-udef_binary64
196×log1p-udef_binary64
113×add-sqr-sqrt_binary64
Counts
3 → 238
Calls

3 calls:

90.0ms
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
90.0ms
(*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2)))
90.0ms
(*.f64 (pow.f64 v 2) (sqrt.f64 2))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01141
124536
2273936
3498036
000
100

simplify134.0ms (4.7%)

Algorithm
egg-herbie
Rules
1104×sqr-pow_binary64
661×fabs-mul_binary64
628×pow-sqr_binary64
611×cube-prod_binary64
310×cube-mult_binary64
Counts
241 → 241
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01030
12030
23830
37430
417630
550030
663130
786830
889330
9100330
10112130
11128830
12145230
13168030
14201430
15240930
16296730
17365130
18387630
19414130
20423330
21426730
22428830
23497130

prune251.0ms (8.8%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2410241
Fresh000
Picked011
Done022
Total2413244
Error
0b
Counts
244 → 3
Alt Table
StatusErrorProgram
0.3b
(-.f64 (*.f64 1/4 (sqrt.f64 2)) (*.f64 5/8 (*.f64 (pow.f64 v 2) (sqrt.f64 2))))
0.0b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 -1/4 (fma.f64 v v -1))))
0.0b
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 2 (fma.f64 v (*.f64 v -3) 1))))
Compiler

Compiled 8421 to 6566 computations (22% saved)

regimes77.0ms (2.7%)

Accuracy

Total 0.0b remaining (65.8%)

Threshold costs 0.0b (65.8%)

Counts
26 → 1
Compiler

Compiled 1360 to 1127 computations (17.1% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01525
12125
22025

end66.0ms (2.3%)

Compiler

Compiled 85 to 68 computations (20% saved)

Profiling

Loading profile data...