Commute and associate

Time bar (total: 3.4s)

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 15 to 9 computations (40% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecxtime
const12810.0ms
ival-add12840.0ms
ival-sub12810.0ms

sample2.7s (80.5%)

Results
2.1s5460×body1024valid
523.0ms2226×body512valid
101.0ms308×body2048valid
30.0ms262×body256valid
Mixed Sampling
Click to see full mixed sampling table
opprecxtime
const20483080.0ms
const102457686.0ms
const51279948.0ms
const256825610.0ms
ival-add391712326.0ms
ival-add1800-190023072120.0ms
ival-add800-90031976182.0ms
ival-add25633024232.0ms
ival-sub20483081.0ms
ival-sub1024576830.0ms
ival-sub512799441.0ms
ival-sub256825648.0ms
Bogosity

preprocess252.0ms (7.4%)

Algorithm
egg-herbie
Rules
2484×associate-+r+
2394×associate-+r-
2382×associate-+l+
1938×fma-def
1118×fma-neg
Problems
256×No Errors
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046539
114011
255111
3174211
4321311
5392111
6393211
7394011
8394011
9432211
10432211
11432211
12432211
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 (+.f64 (+.f64 x y) z) (+.f64 x (+.f64 y z)))
(-.f64 (+.f64 (+.f64 x y) z) (+.f64 x (+.f64 y z)))
(-.f64 (+.f64 (+.f64 (neg.f64 x) y) z) (+.f64 (neg.f64 x) (+.f64 y z)))
(-.f64 (+.f64 (+.f64 x (neg.f64 y)) z) (+.f64 x (+.f64 (neg.f64 y) z)))
(-.f64 (+.f64 (+.f64 x y) (neg.f64 z)) (+.f64 x (+.f64 y (neg.f64 z))))
(neg.f64 (-.f64 (+.f64 (+.f64 (neg.f64 x) y) z) (+.f64 (neg.f64 x) (+.f64 y z))))
(neg.f64 (-.f64 (+.f64 (+.f64 x (neg.f64 y)) z) (+.f64 x (+.f64 (neg.f64 y) z))))
(neg.f64 (-.f64 (+.f64 (+.f64 x y) (neg.f64 z)) (+.f64 x (+.f64 y (neg.f64 z)))))
(-.f64 (+.f64 (+.f64 y x) z) (+.f64 y (+.f64 x z)))
(-.f64 (+.f64 (+.f64 z y) x) (+.f64 z (+.f64 y x)))
(-.f64 (+.f64 (+.f64 x z) y) (+.f64 x (+.f64 z y)))
Outputs
(-.f64 (+.f64 (+.f64 x y) z) (+.f64 x (+.f64 y z)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 x y) z) (+.f64 x (+.f64 y z)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 (neg.f64 x) y) z) (+.f64 (neg.f64 x) (+.f64 y z)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 x (neg.f64 y)) z) (+.f64 x (+.f64 (neg.f64 y) z)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 x y) (neg.f64 z)) (+.f64 x (+.f64 y (neg.f64 z))))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(neg.f64 (-.f64 (+.f64 (+.f64 (neg.f64 x) y) z) (+.f64 (neg.f64 x) (+.f64 y z))))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(neg.f64 (-.f64 (+.f64 (+.f64 x (neg.f64 y)) z) (+.f64 x (+.f64 (neg.f64 y) z))))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(neg.f64 (-.f64 (+.f64 (+.f64 x y) (neg.f64 z)) (+.f64 x (+.f64 y (neg.f64 z)))))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 y x) z) (+.f64 y (+.f64 x z)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 z y) x) (+.f64 z (+.f64 y x)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
(-.f64 (+.f64 (+.f64 x z) y) (+.f64 x (+.f64 z y)))
(+.f64 (+.f64 x y) (-.f64 z (+.f64 y (+.f64 x z))))
0
Symmetry

(abs x)

(abs y)

(abs z)

(negabs x)

(negabs y)

(negabs z)

(sort x y z)

Compiler

Compiled 48 to 17 computations (64.6% saved)

Mixed Sampling
Click to see full mixed sampling table
opprecxtime
const2048180.0ms
const10241840.0ms
const5122480.0ms
const2562560.0ms
ival-add3917720.0ms
ival-add1800-19007364.0ms
ival-add800-9009925.0ms
ival-add25610246.0ms
ival-sub2048180.0ms
ival-sub10241841.0ms
ival-sub5122481.0ms
ival-sub2562561.0ms

eval0.0ms (0%)

Compiler

Compiled 15 to 9 computations (40% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
0
100.0%
0
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
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
0
100.0%
0
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
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
0
100.0%
0
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
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
0
100.0%
0
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
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
0
Compiler

Compiled 19 to 13 computations (31.6% saved)

regimes10.0ms (0.3%)

Accuracy

Total 0b remaining (0%)

Threshold costs 0b (0%)

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

4 calls:

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

Compiled 41 to 26 computations (36.6% saved)

simplify1.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

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

Compiled 4 to 4 computations (0% saved)

soundness354.0ms (10.4%)

Rules
2484×associate-+r+
2394×associate-+r-
2382×associate-+l+
1938×fma-def
1118×fma-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
046539
114011
255111
3174211
4321311
5392111
6393211
7394011
8394011
9432211
10432211
11432211
12432211
Stop Event
node limit
Compiler

Compiled 48 to 14 computations (70.8% saved)

end0.0ms (0%)

preprocess38.0ms (1.1%)

Remove

(sort x y z)

(negabs z)

(negabs y)

(negabs x)

(abs z)

(abs y)

(abs x)

Compiler

Compiled 148 to 136 computations (8.1% saved)

Profiling

Loading profile data...