Details

Time bar (total: 2.0s)

analyze6.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)

sample971.0ms (48.8%)

Results
958.0ms8256×body128valid
0.0msbody128invalid
Compiler

Compiled 42 to 32 computations (23.8% saved)

preprocess36.0ms (1.8%)

Algorithm
egg-herbie
Rules
598×fma-def_binary64
423×distribute-rgt-in_binary64
403×associate-/l*_binary64
348×distribute-lft-in_binary64
224×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01529
13729
28927
323827
471027
5169525
6291925
011
Stop Event
saturated
node limit
Compiler

Compiled 20 to 15 computations (25% saved)

simplify25.0ms (1.3%)

Algorithm
egg-herbie
Rules
598×fma-def_binary64
423×distribute-rgt-in_binary64
403×associate-/l*_binary64
348×distribute-lft-in_binary64
224×fma-neg_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01529
13729
28927
323827
471027
5169525
6291925
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0.2%)

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 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
Compiler

Compiled 73 to 56 computations (23.3% saved)

localize10.0ms (0.5%)

Local error

Found 2 expressions with local error:

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

series16.0ms (0.8%)

Counts
2 → 24
Calls

6 calls:

4.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
v
-inf
4.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
v
inf
3.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
v
0
2.0ms
(*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1)))
v
-inf
2.0ms
(*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1)))
v
inf

rewrite52.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
629×log-prod_binary64
233×expm1-udef_binary64
233×log1p-udef_binary64
193×log-pow_binary64
137×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01538
129436
2318736
Stop Event
node limit
Counts
2 → 40

simplify44.0ms (2.2%)

Algorithm
egg-herbie
Rules
831×times-frac_binary64
389×fma-def_binary64
358×cancel-sign-sub-inv_binary64
309×associate-*l*_binary64
285×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
072805
1234749
2926631
34725631
Stop Event
node limit
Counts
64 → 67

prune70.0ms (3.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New65267
Fresh000
Picked011
Done000
Total65368
Error
0b
Counts
68 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
1.0b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))) 2)
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))))
Compiler

Compiled 1780 to 1488 computations (16.4% saved)

localize24.0ms (1.2%)

Local error

Found 4 expressions with local error:

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

series42.0ms (2.1%)

Counts
4 → 48
Calls

12 calls:

11.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))))
v
inf
5.0ms
(log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))
v
inf
5.0ms
(log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))
v
-inf
4.0ms
(log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))
v
0
4.0ms
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))))
v
-inf

rewrite57.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
272×prod-diff_binary64
246×expm1-udef_binary64
246×log1p-udef_binary64
205×log-pow_binary64
144×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01763
131363
2332863
Stop Event
node limit
Counts
4 → 87

simplify48.0ms (2.4%)

Algorithm
egg-herbie
Rules
679×fma-def_binary64
616×times-frac_binary64
430×cancel-sign-sub-inv_binary64
224×distribute-neg-in_binary64
202×sub-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01661700
15561540
221731481
Stop Event
node limit
Counts
135 → 144

prune188.0ms (9.4%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1440144
Fresh011
Picked011
Done011
Total1443147
Error
0b
Counts
147 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
1.0b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))) 2)
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))))
Compiler

Compiled 4263 to 3562 computations (16.4% saved)

localize15.0ms (0.8%)

Local error

Found 3 expressions with local error:

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

series41.0ms (2.1%)

Counts
3 → 28
Calls

9 calls:

11.0ms
(pow.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))) 2)
v
inf
9.0ms
(pow.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))) 2)
v
-inf
4.0ms
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))
v
-inf
4.0ms
(*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))
v
inf
3.0ms
(sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2))
v
inf

rewrite56.0ms (2.8%)

Algorithm
batch-egg-rewrite
Rules
626×log-prod_binary64
231×expm1-udef_binary64
231×log1p-udef_binary64
194×log-pow_binary64
137×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01659
131859
2320559
Stop Event
node limit
Counts
3 → 88

simplify35.0ms (1.7%)

Algorithm
egg-herbie
Rules
574×fma-def_binary64
466×cancel-sign-sub-inv_binary64
375×associate-*l*_binary64
357×associate-*r*_binary64
258×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0981118
13231054
21275921
Stop Event
node limit
Counts
116 → 120

prune98.0ms (4.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1200120
Fresh000
Picked011
Done022
Total1203123
Error
0b
Counts
123 → 3
Alt Table
StatusErrorProgram
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (*.f64 (sqrt.f64 2) (*.f64 -1/4 (fma.f64 v v -1))))
1.0b
(pow.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (fma.f64 v v -1)) (sqrt.f64 (*.f64 (fma.f64 v (*.f64 v -3) 1) 2)))) 2)
0.0b
(*.f64 (sqrt.f64 (fma.f64 v (*.f64 v -3) 1)) (expm1.f64 (log1p.f64 (*.f64 (*.f64 (sqrt.f64 2) (fma.f64 v v -1)) -1/4))))
Compiler

Compiled 3467 to 2766 computations (20.2% saved)

regimes73.0ms (3.7%)

Accuracy

Total 0.0b remaining (67.4%)

Threshold costs 0.0b (67.4%)

Counts
24 → 1
Compiler

Compiled 1364 to 1088 computations (20.2% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01729
12329
Stop Event
saturated

end79.0ms (4%)

Stop Event
done
Compiler

Compiled 98 to 78 computations (20.4% saved)

Profiling

Loading profile data...