Details

Time bar (total: 4.9s)

analyze669.0ms (13.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
18.7%81.1%0.1%6
25%74.9%0.1%7
31.2%68.6%0.1%8
45.2%53.8%0.9%9
50.3%47.8%1.9%10
54%43.6%2.4%11
61.7%32.9%5.4%12
64.1%28.3%7.6%13
66.2%24.7%9.2%14
Compiler

Compiled 16 to 11 computations (31.3% saved)

sample1.3s (27.3%)

Results
1.0s8256×body128valid
187.0ms1300×body128invalid
Compiler

Compiled 47 to 32 computations (31.9% saved)

simplify62.0ms (1.3%)

Algorithm
egg-herbie
Rules
1167×fma-def_binary64
1073×fma-neg_binary64
225×cancel-sign-sub-inv_binary64
222×distribute-rgt-in_binary64
163×distribute-lft-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
01118
12218
24318
37518
412316
521316
630216
747216
8100913
9132813
10154213
11155913
12155613
13155613
14145313

prune3.0ms (0.1%)

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
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
Compiler

Compiled 78 to 51 computations (34.6% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
0.0b
(/.f64 (+.f64 x 4) y)
3.1b
(*.f64 (/.f64 x y) z)

series38.0ms (0.8%)

Counts
3 → 96
Calls

3 calls:

19.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
12.0ms
(*.f64 (/.f64 x y) z)
6.0ms
(/.f64 (+.f64 x 4) y)

rewrite82.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
334×fma-def_binary64
220×expm1-udef_binary64
220×log1p-udef_binary64
202×fma-neg_binary64
199×log-div_binary64
Counts
3 → 178
Calls

3 calls:

78.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
78.0ms
(/.f64 (+.f64 x 4) y)
78.0ms
(*.f64 (/.f64 x y) z)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01030
123627
2333927
3522127

simplify92.0ms (1.9%)

Algorithm
egg-herbie
Rules
755×fma-neg_binary64
323×fma-def_binary64
185×distribute-rgt-in_binary64
180×cancel-sign-sub-inv_binary64
160×unsub-neg_binary64
Counts
274 → 194
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0311102
1761102
2174952
3335860
4580790
51196790
61420790
71487790
81499790
91499790
101398790

prune165.0ms (3.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1922194
Fresh011
Picked101
Done000
Total1933196
Error
0b
Counts
196 → 3
Alt Table
StatusErrorProgram
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.0b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z)))
1.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x))))
Compiler

Compiled 4086 to 1951 computations (52.3% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x)))
0.0b
(/.f64 (+.f64 x 4) y)
3.3b
(/.f64 z (/.f64 y x))

series64.0ms (1.3%)

Counts
2 → 72
Calls

2 calls:

45.0ms
(/.f64 z (/.f64 y x))
20.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x)))

rewrite88.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
425×fma-def_binary64
256×fma-neg_binary64
234×expm1-udef_binary64
234×log1p-udef_binary64
184×egg-rr
Counts
2 → 184
Calls

2 calls:

83.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x)))
83.0ms
(/.f64 z (/.f64 y x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
124523
2379023
3513823

simplify83.0ms (1.7%)

Algorithm
egg-herbie
Rules
755×fma-neg_binary64
323×fma-def_binary64
185×distribute-rgt-in_binary64
180×cancel-sign-sub-inv_binary64
160×unsub-neg_binary64
Counts
256 → 198
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
030880
176880
2174730
3335638
4580631
51196631
61420631
71487631
81499631
91499631
101398631

prune165.0ms (3.4%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2360236
Fresh022
Picked011
Done000
Total2363239
Error
0b
Counts
239 → 3
Alt Table
StatusErrorProgram
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.0b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z)))
1.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x))))
Compiler

Compiled 5367 to 2362 computations (56% saved)

localize12.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z))
0.0b
(+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y)))
3.1b
(*.f64 (/.f64 x y) z)

series28.0ms (0.6%)

Counts
2 → 57
Calls

2 calls:

20.0ms
(-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z))
7.0ms
(+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y)))

rewrite88.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
735×fma-def_binary64
342×fma-neg_binary64
240×expm1-udef_binary64
240×log1p-udef_binary64
220×egg-rr
Counts
2 → 220
Calls

2 calls:

83.0ms
(-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z))
83.0ms
(+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01229
127326
2369226
3538926

simplify84.0ms (1.7%)

Algorithm
egg-herbie
Rules
755×fma-neg_binary64
323×fma-def_binary64
185×distribute-rgt-in_binary64
180×cancel-sign-sub-inv_binary64
160×unsub-neg_binary64
Counts
277 → 236
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
031820
176820
2174670
3335578
4580517
51196517
61420517
71487517
81499517
91499517
101398517

prune186.0ms (3.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2610261
Fresh011
Picked011
Done011
Total2613264
Error
0b
Counts
264 → 3
Alt Table
StatusErrorProgram
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.0b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z)))
1.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x))))
Compiler

Compiled 5901 to 2542 computations (56.9% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (fma.f64 x z -4))
4.0b
(/.f64 (-.f64 x (fma.f64 x z -4)) y)

series22.0ms (0.5%)

Counts
2 → 60
Calls

2 calls:

18.0ms
(/.f64 (-.f64 x (fma.f64 x z -4)) y)
4.0ms
(-.f64 x (fma.f64 x z -4))

rewrite128.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
731×prod-diff_binary64
259×egg-rr
209×fma-def_binary64
171×expm1-udef_binary64
171×log1p-udef_binary64
Counts
2 → 259
Calls

2 calls:

119.0ms
(-.f64 x (fma.f64 x z -4))
119.0ms
(/.f64 (-.f64 x (fma.f64 x z -4)) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
118019
2247919
3486819
4513919

simplify82.0ms (1.7%)

Algorithm
egg-herbie
Rules
972×fma-neg_binary64
314×fma-def_binary64
207×cancel-sign-sub-inv_binary64
162×distribute-rgt-in_binary64
133×distribute-lft-in_binary64
Counts
319 → 279
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033830
180830
2164644
3302554
4664554
51205554
61281554
71480554
81497554
91497554
101396554

prune462.0ms (9.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2790279
Fresh000
Picked011
Done022
Total2793282
Error
0b
Counts
282 → 3
Alt Table
StatusErrorProgram
4.3b
(fabs.f64 (/.f64 (-.f64 x (fma.f64 x z -4)) y))
1.0b
(fabs.f64 (-.f64 (+.f64 (/.f64 x y) (*.f64 4 (/.f64 1 y))) (*.f64 (/.f64 x y) z)))
1.0b
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (/.f64 z (/.f64 y x))))
Compiler

Compiled 10241 to 5675 computations (44.6% saved)

regimes863.0ms (17.7%)

Accuracy

Total 1.7b remaining (98.7%)

Threshold costs 0b (0%)

Counts
156 → 1
Compiler

Compiled 12532 to 8636 computations (31.1% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01118
11618
22518
33418
44618
55318
65618
75718
85618

end59.0ms (1.2%)

Compiler

Compiled 76 to 50 computations (34.2% saved)

Profiling

Loading profile data...