_multiplyComplex, real part

Time bar (total: 1.4s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
100%99.8%0%0.2%0%0%0%1
Compiler

Compiled 12 to 8 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Operation ival-sub, time spent: 0.0ms, 0.0% of total-time
Operation ival-mult, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

sample1.1s (76.7%)

Results
639.0ms6282×256valid
166.0ms1973×256infinite
0.0ms256infinite
Precisions
Click to see histograms. Total time spent on operations: 258.0ms
Operation ival-mult, time spent: 196.0ms, 76.0% of total-time
Operation ival-sub, time spent: 53.0ms, 21.0% of total-time
Operation const, time spent: 9.0ms, 3.0% of total-time
Bogosity

preprocess268.0ms (18.7%)

Algorithm
egg-herbie
Rules
560×fma-define
390×fma-neg
124×unsub-neg
94×cancel-sign-sub-inv
90×distribute-lft-neg-in
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x.im
00-0-(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
00-0-(*.f64 x.re y.re)
00-0-(*.f64 x.im y.im)
00-0-y.im
00-0-y.re
00-0-x.re
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
045512
1126480
2227480
3472480
4853480
51158480
61188480
71194480
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 (neg.f64 x.im) y.im))
(-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(neg.f64 (-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 x.im y.im)))
(neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (neg.f64 x.im) y.im)))
(neg.f64 (-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im)))
(neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im))))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im))
(neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 (neg.f64 x.im) y.im))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im))
(neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(neg.f64 (-.f64 (*.f64 (neg.f64 x.re) y.re) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 (neg.f64 x.im) y.im)))
(-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im))
(neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))
(neg.f64 (-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im)))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 x.im y.im))
(neg.f64 (-.f64 (*.f64 x.re y.re) (*.f64 x.im (neg.f64 y.im))))
(-.f64 (*.f64 x.re (neg.f64 y.re)) (*.f64 x.im y.im))
(neg.f64 (fma.f64 x.re y.re (*.f64 x.im y.im)))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
(-.f64 (*.f64 y.re x.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 y.im y.re) (*.f64 x.im x.re))
(-.f64 (*.f64 y.re y.im) (*.f64 x.re x.im))
(fma.f64 y.re y.im (*.f64 x.re (neg.f64 x.im)))
(-.f64 (*.f64 x.re x.im) (*.f64 y.re y.im))
(fma.f64 y.re (neg.f64 y.im) (*.f64 x.re x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 y.im x.im))
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
Symmetry

(sort x.re y.re)

(sort x.im y.im)

Results
44.0ms405×256valid
10.0ms106×256infinite
0.0ms256valid
Compiler

Compiled 55 to 23 computations (58.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
Operation ival-mult, time spent: 13.0ms, 80.0% of total-time
Operation ival-sub, time spent: 3.0ms, 19.0% of total-time
Operation const, time spent: 1.0ms, 6.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 4 to 4 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 11 to 7 computations (36.4% saved)

localize35.0ms (2.4%)

Results
20.0ms202×256valid
5.0ms53×256infinite
0.0ms256valid
Compiler

Compiled 22 to 8 computations (63.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
Operation ival-mult, time spent: 5.0ms, 72.0% of total-time
Operation ival-sub, time spent: 1.0ms, 14.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 4 to 4 computations (0% saved)

prune1.0ms (0.1%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done000
Total011
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 22 to 14 computations (36.4% saved)

simplify3.0ms (0.2%)

Algorithm
egg-herbie
Rules
10×*-commutative
sub-neg
+-commutative
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
12231
23431
34031
44431
54531
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(-.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Compiler

Compiled 11 to 7 computations (36.4% saved)

soundness0.0ms (0%)

end0.0ms (0%)

preprocess26.0ms (1.8%)

Remove

(sort x.im y.im)

(sort x.re y.re)

Compiler

Compiled 132 to 84 computations (36.4% saved)

Profiling

Loading profile data...