Details

Time bar (total: 3.8s)

analyze3.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%100%0%0
0%100%0%1
50%50%0%2
50%25%25%3
62.5%12.5%25%4
68.7%6.2%25%5
71.8%3.1%25%6
73.4%1.6%25%7
74.2%0.8%25%8
74.6%0.4%25%9
74.8%0.2%25%10
74.9%0.1%25%11
74.9%0%25%12
74.9%0%25%13
74.9%0%25%14
Compiler

Compiled 10 to 8 computations (20% saved)

sample950.0ms (24.9%)

Results
914.0ms8252×body128valid
1.0msbody2048valid
Compiler

Compiled 29 to 23 computations (20.7% saved)

simplify10.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11112
21012

prune3.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.2b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
Compiler

Compiled 27 to 21 computations (22.2% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1 (sqrt.f64 (+.f64 x 1)))
0.0b
(sqrt.f64 (+.f64 x 1))
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))

series112.0ms (2.9%)

Counts
3 → 12
Calls

3 calls:

81.0ms
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
16.0ms
(+.f64 1 (sqrt.f64 (+.f64 x 1)))
14.0ms
(sqrt.f64 (+.f64 x 1))

rewrite37.0ms (1%)

Algorithm
rewrite-expression-head
Rules
44×*-un-lft-identity_binary64
30×add-sqr-sqrt_binary64
21×distribute-lft-out_binary64
18×times-frac_binary64
16×add-cube-cbrt_binary64
Counts
3 → 82
Calls

3 calls:

13.0ms
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
9.0ms
(+.f64 1 (sqrt.f64 (+.f64 x 1)))
5.0ms
(sqrt.f64 (+.f64 x 1))

simplify172.0ms (4.5%)

Algorithm
egg-herbie
Rules
733×fma-neg_binary64
333×associate-/r*_binary64
321×associate-/l/_binary64
303×associate-*l/_binary64
284×cancel-sign-sub-inv_binary64
Counts
94 → 108
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01231335
12631239
26341227
318781212
443231211
549871211
648751211

prune164.0ms (4.3%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1044108
Fresh000
Picked011
Done000
Total1045109
Error
0b
Counts
109 → 5
Alt Table
StatusErrorProgram
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
0.3b
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
1.6b
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))
21.7b
(*.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
21.4b
(fma.f64 1/2 x (*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)))
Compiler

Compiled 1653 to 1266 computations (23.4% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 1 (sqrt.f64 (+.f64 x 1)))
0.0b
(sqrt.f64 (+.f64 x 1))
0.1b
(/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x)
0.2b
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))

series110.0ms (2.9%)

Counts
2 → 8
Calls

2 calls:

88.0ms
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
22.0ms
(/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x)

rewrite65.0ms (1.7%)

Algorithm
rewrite-expression-head
Rules
156×*-un-lft-identity_binary64
156×times-frac_binary64
108×add-sqr-sqrt_binary64
76×add-cube-cbrt_binary64
64×distribute-lft-out_binary64
Counts
2 → 157
Calls

2 calls:

21.0ms
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
12.0ms
(/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x)

simplify248.0ms (6.5%)

Algorithm
egg-herbie
Rules
918×fma-neg_binary64
842×fma-def_binary64
286×times-frac_binary64
250×*-commutative_binary64
241×distribute-rgt-in_binary64
Counts
165 → 178
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01343593
12903208
27503139
320883123
442403123
549793123
649183123

prune315.0ms (8.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New2360236
Fresh033
Picked011
Done011
Total2365241
Error
0b
Counts
241 → 5
Alt Table
StatusErrorProgram
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
0.3b
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
1.6b
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))
21.7b
(*.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
21.4b
(fma.f64 1/2 x (*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)))
Compiler

Compiled 4503 to 3553 computations (21.1% saved)

localize17.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
0.0b
(sqrt.f64 (+.f64 x 1))
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
1.6b
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))

series591.0ms (15.5%)

Counts
2 → 8
Calls

2 calls:

512.0ms
(log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
78.0ms
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
expm1-log1p-u_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 22
Calls

2 calls:

0.0ms
(log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
0.0ms
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))

simplify100.0ms (2.6%)

Algorithm
egg-herbie
Rules
598×distribute-rgt-neg-in_binary64
542×fma-def_binary64
489×distribute-lft-neg-in_binary64
403×cancel-sign-sub-inv_binary64
382×associate-*l*_binary64
Counts
30 → 43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056515
1121453
2289444
3843426
42968426
54812426
65111426

prune182.0ms (4.8%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New1220122
Fresh022
Picked011
Done022
Total1225127
Error
0b
Counts
127 → 5
Alt Table
StatusErrorProgram
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
0.3b
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
1.6b
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))
21.7b
(*.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
21.4b
(fma.f64 1/2 x (*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)))
Compiler

Compiled 2046 to 1618 computations (20.9% saved)

localize14.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)
0.0b
(*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8))

series7.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

4.0ms
(*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8))
3.0ms
(fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)

rewrite7.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
add-sqr-sqrt_binary64
associate-*r*_binary64
Counts
2 → 33
Calls

2 calls:

5.0ms
(*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8))
0.0ms
(fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)

simplify159.0ms (4.2%)

Algorithm
egg-herbie
Rules
671×fma-def_binary64
557×fma-neg_binary64
551×associate-*l*_binary64
446×exp-prod_binary64
423×associate-*r*_binary64
Counts
57 → 71
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0741059
1179872
2515755
31871755
43945755
54954755
64930755

prune103.0ms (2.7%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New71071
Fresh011
Picked011
Done033
Total71576
Error
0b
Counts
76 → 5
Alt Table
StatusErrorProgram
0.2b
(/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))
0.3b
(/.f64 1 (/.f64 (+.f64 1 (sqrt.f64 (+.f64 x 1))) x))
1.6b
(expm1.f64 (log1p.f64 (/.f64 x (+.f64 1 (sqrt.f64 (+.f64 x 1))))))
21.7b
(*.f64 (sqrt.f64 x) (/.f64 (sqrt.f64 x) (+.f64 1 (sqrt.f64 (+.f64 x 1)))))
21.4b
(fma.f64 1/2 x (*.f64 (*.f64 x x) (fma.f64 x (-.f64 1/16 (*.f64 5/128 x)) -1/8)))
Compiler

Compiled 1455 to 964 computations (33.7% saved)

regimes276.0ms (7.2%)

Accuracy

Total 0.2b remaining (98.1%)

Threshold costs 0.2b (98.1%)

Counts
79 → 1
Compiler

Compiled 2018 to 1572 computations (22.1% saved)

simplify4.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11112
21012

end148.0ms (3.9%)

Compiler

Compiled 78 to 59 computations (24.4% saved)

Profiling

Loading profile data...