Details

Time bar (total: 1.6s)

analyze165.0ms (10.2%)

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
25%74.9%0.1%5
25%62.4%12.6%6
25%46.8%28.2%7
31.2%35.9%32.9%8
39%25%36%9
42.9%18.7%38.3%10
47.2%12.9%39.9%11
49.4%9.6%41.1%12
51.6%6.5%41.9%13
52.7%4.8%42.4%14
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample861.0ms (53.5%)

Results
825.0ms8256×body128valid
22.0ms212×body128invalid
Compiler

Compiled 32 to 20 computations (37.5% saved)

preprocess22.0ms (1.4%)

Algorithm
egg-herbie
Rules
48×fma-def_binary64
*-commutative_binary64
+-commutative_binary64
associate-+l+_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01434
13128
26124
39924
410124
022
122
Stop Event
unsound
saturated
Symmetry

(sort x y)

Compiler

Compiled 15 to 9 computations (40% saved)

simplify8.0ms (0.5%)

Algorithm
egg-herbie
Rules
33×fma-def_binary64
*-commutative_binary64
+-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01017
11914
24712
38112
48312
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
0.0b
(+.f64 (+.f64 (*.f64 x x) (*.f64 (*.f64 x 2) y)) (*.f64 y y))
Compiler

Compiled 76 to 42 computations (44.7% saved)

localize5.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))

series10.0ms (0.6%)

Counts
1 → 24
Calls

6 calls:

4.0ms
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
y
0
1.0ms
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
x
0
1.0ms
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
x
-inf
1.0ms
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
x
inf
1.0ms
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
y
inf

rewrite39.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
581×log1p-expm1-u_binary64
581×expm1-log1p-u_binary64
291×log-prod_binary64
153×prod-diff_binary64
122×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
114012
2160212
Stop Event
node limit
Counts
1 → 29

simplify66.0ms (4.1%)

Algorithm
egg-herbie
Rules
613×fma-def_binary64
391×sqr-pow_binary64
374×*-commutative_binary64
372×unswap-sqr_binary64
362×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
012294
132267
269222
3151216
4412216
51498216
62779216
73051216
83237216
93481216
103784216
114175216
124682216
Stop Event
node limit
Counts
53 → 39

prune23.0ms (1.5%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New38139
Fresh101
Picked011
Done000
Total39241
Error
0b
Counts
41 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
0.0b
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
Compiler

Compiled 560 to 291 computations (48% saved)

localize5.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
0.0b
(*.f64 x (fma.f64 2 y x))

series11.0ms (0.7%)

Counts
2 → 48
Calls

12 calls:

1.0ms
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
x
-inf
1.0ms
(*.f64 x (fma.f64 2 y x))
x
-inf
1.0ms
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
x
0
1.0ms
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
x
inf
1.0ms
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
y
-inf

rewrite49.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
962×prod-diff_binary64
810×expm1-log1p-u_binary64
85×add-sqr-sqrt_binary64
82×log1p-expm1-u_binary64
81×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0820
117120
2220520
Stop Event
node limit
Counts
2 → 52

simplify76.0ms (4.7%)

Algorithm
egg-herbie
Rules
613×fma-def_binary64
391×sqr-pow_binary64
372×unswap-sqr_binary64
366×*-commutative_binary64
362×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
012525
132480
269399
3151393
4414393
51499393
62775393
73047393
83232393
93476393
103777393
114170393
124677393
Stop Event
node limit
Counts
100 → 64

prune34.0ms (2.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New64064
Fresh000
Picked011
Done011
Total64266
Error
0b
Counts
66 → 2
Alt Table
StatusErrorProgram
0.0b
(fma.f64 x (fma.f64 2 y x) (*.f64 y y))
0.0b
(+.f64 (*.f64 y y) (*.f64 x (fma.f64 2 y x)))
Compiler

Compiled 993 to 528 computations (46.8% saved)

regimes37.0ms (2.3%)

Accuracy

Total 0.0b remaining (17.5%)

Threshold costs 0.0b (17.5%)

Counts
13 → 1
Compiler

Compiled 384 to 233 computations (39.3% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
11014
Stop Event
saturated

end191.0ms (11.9%)

Stop Event
done
Compiler

Compiled 71 to 41 computations (42.3% saved)

Profiling

Loading profile data...