Details

Time bar (total: 2.3s)

analyze16.0ms (0.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
25%74.9%0.1%6
93.7%6.2%0.1%7
96.8%3.1%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 22 to 13 computations (40.9% saved)

sample1.3s (54.7%)

Results
1.1s8256×body128valid
Compiler

Compiled 65 to 38 computations (41.5% saved)

simplify106.0ms (4.5%)

Algorithm
egg-herbie
Rules
620×fma-def_binary64
549×sub-neg_binary64
460×distribute-neg-frac_binary64
455×cancel-sign-sub-inv_binary64
430×times-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
12324
25224
310524
419924
533024
644224
760324
890124
9230424
10338624
11395624
12445424
13473524
14523824

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
34.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
34.0b
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
Compiler

Compiled 76 to 42 computations (44.7% saved)

localize9.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
4.8b
(fma.f64 -4 (*.f64 y y) (*.f64 x x))
33.3b
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))

series89.0ms (3.8%)

Counts
2 → 48
Calls

2 calls:

79.0ms
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
8.0ms
(fma.f64 -4 (*.f64 y y) (*.f64 x x))

rewrite60.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
560×log-prod_binary64
377×prod-diff_binary64
205×expm1-udef_binary64
205×log1p-udef_binary64
186×log-pow_binary64
Counts
2 → 67
Calls

2 calls:

58.0ms
(fma.f64 -4 (*.f64 y y) (*.f64 x x))
58.0ms
(/.f64 (fma.f64 -4 (*.f64 y y) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01235
124634
2273634
3535934

simplify80.0ms (3.4%)

Algorithm
egg-herbie
Rules
557×fma-neg_binary64
502×associate-*l/_binary64
472×associate-*r/_binary64
368×fma-def_binary64
322×associate-/r/_binary64
Counts
115 → 87
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046807
1121753
2326741
31272723
44300669
54942669
64998669
74958669

prune65.0ms (2.8%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New82587
Fresh000
Picked101
Done000
Total83588
Error
0.5b
Counts
88 → 5
Alt Table
StatusErrorProgram
49.0b
(pow.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 -4 (*.f64 y y)))) (hypot.f64 x (*.f64 y 2))) 2)
34.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
37.0b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
33.2b
-1
30.5b
1
Compiler

Compiled 2030 to 1151 computations (43.3% saved)

localize0.0ms (0%)

prune4.0ms (0.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New000
Fresh044
Picked011
Done000
Total055
Error
0.5b
Counts
5 → 5
Alt Table
StatusErrorProgram
49.0b
(pow.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 -4 (*.f64 y y)))) (hypot.f64 x (*.f64 y 2))) 2)
34.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
37.0b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
33.2b
-1
30.5b
1
Compiler

Compiled 107 to 73 computations (31.8% saved)

localize0.0ms (0%)

prune4.0ms (0.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New000
Fresh033
Picked011
Done011
Total055
Error
0.5b
Counts
5 → 5
Alt Table
StatusErrorProgram
49.0b
(pow.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 -4 (*.f64 y y)))) (hypot.f64 x (*.f64 y 2))) 2)
34.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
37.0b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
33.2b
-1
30.5b
1
Compiler

Compiled 104 to 70 computations (32.7% saved)

localize12.0ms (0.5%)

Local error

Found 2 expressions with local error:

NewErrorProgram
3.0b
(fma.f64 y (*.f64 y -4) (*.f64 x x))
33.3b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))

series31.0ms (1.3%)

Counts
2 → 48
Calls

2 calls:

17.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))
14.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))

rewrite62.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
868×log1p-expm1-u_binary64
868×expm1-log1p-u_binary64
565×prod-diff_binary64
118×add-sqr-sqrt_binary64
112×add-log-exp_binary64
Counts
2 → 57
Calls

2 calls:

61.0ms
(fma.f64 y (*.f64 y -4) (*.f64 x x))
61.0ms
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01235
124729
2234529
3625629

simplify80.0ms (3.4%)

Algorithm
egg-herbie
Rules
557×fma-neg_binary64
502×associate-*l/_binary64
472×associate-*r/_binary64
368×fma-def_binary64
322×associate-/r/_binary64
Counts
105 → 77
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046807
1121753
2326741
31272723
44300669
54942669
64998669
74958669

prune54.0ms (2.3%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New77077
Fresh022
Picked011
Done022
Total77582
Error
0.5b
Counts
82 → 5
Alt Table
StatusErrorProgram
49.0b
(pow.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 -4 (*.f64 y y)))) (hypot.f64 x (*.f64 y 2))) 2)
34.0b
(/.f64 (fma.f64 y (*.f64 y -4) (*.f64 x x)) (fma.f64 x x (*.f64 y (*.f64 y 4))))
37.0b
(fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y y)) -1)
33.2b
-1
30.5b
1
Compiler

Compiled 1585 to 1093 computations (31% saved)

regimes194.0ms (8.3%)

Accuracy

Total 13.5b remaining (97.2%)

Threshold costs 0b (0%)

Counts
9 → 6
Compiler

Compiled 932 to 610 computations (34.5% saved)

bsearch98.0ms (4.2%)

Steps
ItersRangePoint
9
2.2099826107732652e+123
9.410521888160938e+128
6.846130813274231e+127
9
5.208539296316691e-62
5.63823929317062e-56
2.961072780439151e-61
8
-3.241224646668368e-68
-4.4975924051654415e-72
-4.611780839164092e-70
5
-2.2845188462257706e+61
-1.056963011895567e+61
-2.2617666078219922e+61
8
-4.393143762401554e+98
-1.6540362943667853e+96
-1.7380791032682012e+96
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
03495
13995
23895

end92.0ms (3.9%)

Compiler

Compiled 193 to 122 computations (36.8% saved)

Profiling

Loading profile data...