simple fma test

Time bar (total: 2.3s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 16 to 10 computations (37.5% saved)

sample1.4s (60%)

Results
549.0ms2778×body1024valid
314.0ms2977×body256valid
302.0ms1218×body2048valid
204.0ms1283×body512valid
Bogosity

preprocess247.0ms (10.7%)

Algorithm
egg-herbie
Rules
5608×fma-def
1648×unsub-neg
1484×fma-neg
1032×sub-neg
564×cancel-sign-sub-inv
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
045203
1121203
23337
313127
431767
548187
657817
768167
874547
975387
1075387
1176467
1277337
1377547
1477667
1577727
1677727
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 (neg.f64 x) y z) (+.f64 1 (+.f64 (*.f64 (neg.f64 x) y) z)))
(-.f64 (fma.f64 x (neg.f64 y) z) (+.f64 1 (+.f64 (*.f64 x (neg.f64 y)) z)))
(-.f64 (fma.f64 x y (neg.f64 z)) (+.f64 1 (+.f64 (*.f64 x y) (neg.f64 z))))
(-.f64 (fma.f64 y x z) (+.f64 1 (+.f64 (*.f64 y x) z)))
(-.f64 (fma.f64 z y x) (+.f64 1 (+.f64 (*.f64 z y) x)))
(-.f64 (fma.f64 x z y) (+.f64 1 (+.f64 (*.f64 x z) y)))
Outputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 (neg.f64 x) y z) (+.f64 1 (+.f64 (*.f64 (neg.f64 x) y) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 x (neg.f64 y) z) (+.f64 1 (+.f64 (*.f64 x (neg.f64 y)) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 x y (neg.f64 z)) (+.f64 1 (+.f64 (*.f64 x y) (neg.f64 z))))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 y x z) (+.f64 1 (+.f64 (*.f64 y x) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 z y x) (+.f64 1 (+.f64 (*.f64 z y) x)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
(-.f64 (fma.f64 x z y) (+.f64 1 (+.f64 (*.f64 x z) y)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1
Symmetry

(abs x)

(abs y)

(abs z)

(sort x y z)

Compiler

Compiled 18 to 12 computations (33.3% saved)

simplify249.0ms (10.8%)

Algorithm
egg-herbie
Rules
8488×fma-def
1522×unsub-neg
1056×sub-neg
908×distribute-neg-in
906×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01229
12529
2661
32371
45701
520461
645181
757081
863531
964931
1065251
1165251
1267931
1369641
1470401
1570561
1670561
1770721
1870721
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Outputs
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
(-.f64 (fma.f64 x y z) (+.f64 1 (fma.f64 x y z)))
-1

eval1.0ms (0%)

Compiler

Compiled 27 to 13 computations (51.9% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New213
Fresh101
Picked000
Done000
Total314
Accurracy
100.0%
Counts
4 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
-1
100.0%
-1
Compiler

Compiled 8 to 8 computations (0% saved)

localize0.0ms (0%)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Accurracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
-1
100.0%
-1
Compiler

Compiled 8 to 8 computations (0% saved)

localize0.0ms (0%)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Accurracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
-1
100.0%
-1
Compiler

Compiled 8 to 8 computations (0% saved)

localize0.0ms (0%)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Accurracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
-1
100.0%
-1
Compiler

Compiled 8 to 8 computations (0% saved)

localize0.0ms (0%)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Accurracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
-1
Compiler

Compiled 20 to 14 computations (30% saved)

regimes11.0ms (0.5%)

Accuracy

Total -52.9b remaining (-∞%)

Threshold costs -52.9b (-∞%)

Counts
2 → 1
Calls
Call 1
Inputs
-1
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Outputs
-1
Calls

4 calls:

3.0ms
x
3.0ms
z
3.0ms
y
2.0ms
(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(-.f64 (fma.f64 x y z) (+.f64 1 (+.f64 (*.f64 x y) z)))
Compiler

Compiled 43 to 28 computations (34.9% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
011
Stop Event
fuel
saturated
Calls
Call 1
Inputs
-1
Outputs
-1
Compiler

Compiled 4 to 4 computations (0% saved)

soundness376.0ms (16.3%)

Rules
8488×fma-def
1522×unsub-neg
1056×sub-neg
908×distribute-neg-in
906×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01229
12529
2661
32371
45701
520461
645181
757081
863531
964931
1065251
1165251
1267931
1369641
1470401
1570561
1670561
1770721
1870721
Stop Event
node limit
Compiler

Compiled 58 to 22 computations (62.1% saved)

end0.0ms (0%)

preprocess30.0ms (1.3%)

Remove

(sort x y z)

(abs z)

(abs y)

(abs x)

Compiler

Compiled 78 to 66 computations (15.4% saved)

Profiling

Loading profile data...