Details

Time bar (total: 3.8s)

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%13
49.9%0%50%14
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample1.2s (32.6%)

Results
1.2s8256×body128valid
Compiler

Compiled 38 to 32 computations (15.8% saved)

simplify38.0ms (1%)

Algorithm
egg-herbie
Rules
396×fma-neg_binary64
375×fma-def_binary64
260×div-sub_binary64
123×times-frac_binary64
116×associate-/l*_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01017
11917
22517
33517
45717
57317
610217
715817
824017
929917
1039117
1153617
1277717
1382617
1479917
1572217

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 36 to 30 computations (16.7% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series10.0ms (0.3%)

Counts
3 → 24
Calls

3 calls:

5.0ms
(sqrt.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))
3.0ms
(atan.f64 (sqrt.f64 (/.f64 (-.f64 1 x) (+.f64 1 x))))
2.0ms
(/.f64 (-.f64 1 x) (+.f64 1 x))

rewrite190.0ms (5%)

Algorithm
egg-rewrite
Rules
125×egg
31×egg
18×egg
Counts
3 → 174
Calls

3 calls:

72.0ms
(/.f64 (-.f64 1 x) (+.f64 1 x))
58.0ms
(atan.f64 (sqrt.f64 (/.f64 (-.f64 1 x) (+.f64 1 x))))
55.0ms
(sqrt.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
113510
2186710
3528710
0712
115512
2208312
3576412
0814
117414
2229114
3624714

simplify61.0ms (1.6%)

Algorithm
egg-herbie
Rules
692×fma-def_binary64
653×fma-neg_binary64
443×cancel-sign-sub-inv_binary64
264×associate-/l/_binary64
194×sub-neg_binary64
Counts
198 → 200
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
061494
1188468
2590456
31925394
44421390
54962390

prune218.0ms (5.8%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1982200
Fresh000
Picked101
Done000
Total1992201
Error
0b
Counts
201 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))))))
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))))
Compiler

Compiled 6365 to 4750 computations (25.4% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

series11.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

6.0ms
(sqrt.f64 (expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))))
3.0ms
(log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))
2.0ms
(expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x))))

rewrite192.0ms (5.1%)

Algorithm
egg-rewrite
Rules
129×egg
30×egg
16×egg
Counts
3 → 175
Calls

3 calls:

75.0ms
(expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x))))
56.0ms
(sqrt.f64 (expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))))
56.0ms
(log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
115410
2205910
3611810
0912
117312
2225712
3501112
0712
115312
2204612
3607312

simplify158.0ms (4.2%)

Algorithm
egg-herbie
Rules
728×cancel-sign-sub-inv_binary64
726×fma-neg_binary64
405×sub-neg_binary64
217×associate-+l+_binary64
202×associate--l+_binary64
Counts
211 → 220
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
089716
1270676
2867664
32848662
44797662
55015662

prune333.0ms (8.8%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New3590359
Fresh011
Picked011
Done000
Total3592361
Error
0b
Counts
361 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))))))
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))))
Compiler

Compiled 12409 to 9251 computations (25.4% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))
0.0b
(/.f64 (-.f64 1 x) (+.f64 1 x))
0.0b
(pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)
0.0b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3))

series11.0ms (0.3%)

Counts
3 → 36
Calls

3 calls:

6.0ms
(sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))
3.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3))
2.0ms
(pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)

rewrite235.0ms (6.2%)

Algorithm
egg-rewrite
Rules
131×egg
40×egg
34×egg
Counts
3 → 205
Calls

3 calls:

109.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3))
63.0ms
(pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)
57.0ms
(sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0910
118410
2234010
3492110
4515110
0813
118213
2230013
3625113
01012
120312
2251912
3499512

simplify105.0ms (2.8%)

Algorithm
egg-herbie
Rules
893×fma-neg_binary64
602×cancel-sign-sub-inv_binary64
274×associate-/l/_binary64
267×sub-neg_binary64
190×unswap-sqr_binary64
Counts
241 → 241
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
080639
1251609
2768593
32365532
44537527
54980527
64999527
74914527

prune357.0ms (9.5%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New3800380
Fresh000
Picked011
Done011
Total3802382
Error
0b
Counts
382 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (expm1.f64 (log1p.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)))))))
0.0b
(*.f64 2 (atan.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 1 x) (+.f64 1 x)) 3)))))
Compiler

Compiled 12737 to 9663 computations (24.1% saved)

regimes533.0ms (14.1%)

Accuracy

Total 0.0b remaining (24.3%)

Threshold costs 0.0b (24.3%)

Counts
78 → 1
Compiler

Compiled 6788 to 5734 computations (15.5% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01221
11821
22221
32421
42521
52421

end54.0ms (1.4%)

Compiler

Compiled 57 to 49 computations (14% saved)

Profiling

Loading profile data...