Details

Time bar (total: 2.8s)

analyze6.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
0%100%0%2
25%75%0%3
50%50%0%4
93.7%6.2%0%5
96.8%3.1%0%6
98.4%1.6%0%7
99.2%0.8%0%8
99.6%0.4%0%9
99.8%0.2%0%10
99.9%0.1%0%11
99.9%0%0%12
99.9%0%0%13
99.9%0%0%14
Compiler

Compiled 37 to 29 computations (21.6% saved)

sample1.3s (46.8%)

Results
1.3s8256×body128valid
Compiler

Compiled 110 to 86 computations (21.8% saved)

simplify38.0ms (1.4%)

Algorithm
egg-herbie
Rules
1108×fma-def_binary64
549×times-frac_binary64
299×associate-+l+_binary64
252×associate-/l*_binary64
243×associate-+r+_binary64
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
01152
12348
24946
313542
434942
562842
6106042
7227938
8324336
9444636
10479336
Stop Event
node limit
Counts
1 → 2

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 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
Compiler

Compiled 113 to 87 computations (23% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
0.0b
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2)
0.0b
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1)
0.1b
(/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t)))

series10.0ms (0.4%)

Counts
4 → 48
Calls

4 calls:

3.0ms
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
3.0ms
(/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t)))
2.0ms
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1)
2.0ms
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2)

rewrite71.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
673×prod-diff_binary64
133×add-sqr-sqrt_binary64
130×log1p-expm1-u_binary64
130×expm1-log1p-u_binary64
129×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01283
127583
2382683
Stop Event
node limit
Counts
4 → 103
Calls

4 calls:

68.0ms
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
68.0ms
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2)
68.0ms
(fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1)
68.0ms
(/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t)))

simplify31.0ms (1.1%)

Algorithm
egg-herbie
Rules
497×cancel-sign-sub-inv_binary64
444×fma-neg_binary64
429×associate-*l*_binary64
310×fma-def_binary64
230×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079656
1252634
2700617
32154607
Stop Event
node limit
Counts
151 → 159

prune172.0ms (6.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1943197
Fresh000
Picked011
Done000
Total1944198
Error
0b
Counts
198 → 4
Alt Table
StatusErrorProgram
32.1b
(fma.f64 t t 1/2)
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
0.0b
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))
Compiler

Compiled 5908 to 4602 computations (22.1% saved)

localize11.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)
0.0b
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)
0.0b
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
0.1b
(/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2)))

series10.0ms (0.4%)

Counts
4 → 48
Calls

4 calls:

3.0ms
(/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2)))
3.0ms
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
2.0ms
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)
2.0ms
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)

rewrite68.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
670×prod-diff_binary64
150×add-sqr-sqrt_binary64
146×log1p-expm1-u_binary64
146×expm1-log1p-u_binary64
145×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01486
131583
2415883
Stop Event
node limit
Counts
4 → 113
Calls

4 calls:

66.0ms
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)
66.0ms
(fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)
66.0ms
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
66.0ms
(/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2)))

simplify34.0ms (1.2%)

Algorithm
egg-herbie
Rules
497×cancel-sign-sub-inv_binary64
444×fma-neg_binary64
429×associate-*l*_binary64
312×fma-def_binary64
226×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079656
1252634
2700617
32158607
Stop Event
node limit
Counts
161 → 169

prune228.0ms (8.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2070207
Fresh022
Picked011
Done011
Total2074211
Error
0b
Counts
211 → 4
Alt Table
StatusErrorProgram
32.1b
(fma.f64 t t 1/2)
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
0.0b
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))
Compiler

Compiled 6635 to 5227 computations (21.2% saved)

localize13.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)))
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))
0.1b
(/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2)))

series16.0ms (0.6%)

Counts
3 → 36
Calls

3 calls:

7.0ms
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)))
6.0ms
(/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))
3.0ms
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))

rewrite65.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
664×prod-diff_binary64
160×add-sqr-sqrt_binary64
155×log1p-expm1-u_binary64
155×expm1-log1p-u_binary64
154×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01597
133794
2444394
Stop Event
node limit
Counts
3 → 67
Calls

3 calls:

63.0ms
(/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))
63.0ms
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2)))
63.0ms
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))

simplify54.0ms (1.9%)

Algorithm
egg-herbie
Rules
618×fma-neg_binary64
334×fma-def_binary64
245×times-frac_binary64
238×associate-+l+_binary64
224×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0101797
1316767
21046736
34370736
Stop Event
node limit
Counts
103 → 106

prune339.0ms (12%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New2200220
Fresh011
Picked011
Done022
Total2204224
Error
0b
Counts
224 → 4
Alt Table
StatusErrorProgram
32.1b
(fma.f64 t t 1/2)
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
0.0b
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))
Compiler

Compiled 9437 to 7482 computations (20.7% saved)

localize2.0ms (0.1%)

prune4.0ms (0.1%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done033
Total044
Error
0b
Counts
4 → 4
Alt Table
StatusErrorProgram
32.1b
(fma.f64 t t 1/2)
0.0b
(/.f64 (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 1) (fma.f64 t (/.f64 4 (+.f64 (/.f64 1 t) (+.f64 2 t))) 2))
0.0b
(pow.f64 (/.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2) (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) -1)
0.0b
(*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (*.f64 (sqrt.f64 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 1)) (/.f64 1 (fma.f64 t (/.f64 4 (+.f64 t (+.f64 (/.f64 1 t) 2))) 2))))
Compiler

Compiled 102 to 79 computations (22.5% saved)

regimes220.0ms (7.8%)

Accuracy

Total 0.0b remaining (68.3%)

Threshold costs 0.0b (68.3%)

Counts
53 → 1
Compiler

Compiled 4636 to 3646 computations (21.4% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
11636
Stop Event
saturated

end96.0ms (3.4%)

Compiler

Compiled 154 to 119 computations (22.7% saved)

Profiling

Loading profile data...