_multiplyComplex, imaginary part

Time bar (total: 1.2s)

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
ival-add: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

sample1.0s (82.7%)

Results
602.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 301.0ms
ival-mult: 234.0ms (77.7% of total)
ival-add: 57.0ms (18.9% of total)
const: 8.0ms (2.7% of total)
backward-pass: 2.0ms (0.7% of total)
Bogosity

preprocess77.0ms (6.3%)

Algorithm
egg-herbie
Rules
226×fma-define
118×fma-neg
68×unsub-neg
45×associate-*r*
37×distribute-lft-neg-out
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045464
196464
2170464
3374464
4603464
5804464
6959464
7981464
8985464
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re)))
(+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re))
(neg.f64 (+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re)))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re)))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re))))
(neg.f64 (+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re)))
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re))
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
Outputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 (neg.f64 x.re) y.im) (*.f64 x.im y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 (neg.f64 x.im) y.re)))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 x.re y.im) (*.f64 x.im (neg.f64 y.re))))
(fma.f64 x.re (neg.f64 y.im) (*.f64 x.im y.re))
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
(neg.f64 (+.f64 (*.f64 x.re (neg.f64 y.im)) (*.f64 x.im y.re)))
(fma.f64 x.re y.im (*.f64 x.im (neg.f64 y.re)))
(-.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
(+.f64 (*.f64 x.im y.im) (*.f64 x.re y.re))
(fma.f64 x.re y.re (*.f64 y.im x.im))
(+.f64 (*.f64 y.re y.im) (*.f64 x.im x.re))
(fma.f64 x.re x.im (*.f64 y.im y.re))
(+.f64 (*.f64 y.im x.re) (*.f64 x.im y.re))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re y.im) (*.f64 y.re x.im))
(fma.f64 x.re y.im (*.f64 x.im y.re))
(+.f64 (*.f64 x.re x.im) (*.f64 y.im y.re))
(fma.f64 x.re x.im (*.f64 y.im y.re))
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
(fma.f64 x.re y.re (*.f64 y.im x.im))
Symmetry

(sort x.re y.im)

(sort x.im y.re)

explain59.0ms (4.8%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x.im
00-0-(*.f64 x.re y.im)
00-0-y.im
00-0-y.re
00-0-(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
00-0-x.re
00-0-(*.f64 x.im y.re)
Results
37.0ms512×0valid
Compiler

Compiled 55 to 23 computations (58.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 7.0ms (65% of total)
ival-add: 3.0ms (27.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 10 to 6 computations (40% saved)

prune1.0ms (0.1%)

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

Compiled 11 to 7 computations (36.4% saved)

localize47.0ms (3.8%)

Results
41.0ms256×0valid
Compiler

Compiled 22 to 8 computations (63.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (64.7% of total)
ival-add: 2.0ms (32.3% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

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.im) (*.f64 x.im y.re))
Compiler

Compiled 22 to 14 computations (36.4% saved)

simplify2.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01431
11731
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))
Outputs
(+.f64 (*.f64 x.re y.im) (*.f64 x.im y.re))

soundness0.0ms (0%)

Stop Event
done
Compiler

Compiled 11 to 7 computations (36.4% saved)

preprocess25.0ms (2%)

Remove

(sort x.im y.re)

(sort x.re y.im)

Compiler

Compiled 132 to 84 computations (36.4% saved)

end0.0ms (0%)

Profiling

Loading profile data...