math.cube on complex, real part

Time bar (total: 1.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 22 to 12 computations (45.5% 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-add, 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.2s (86.6%)

Results
608.0ms4569×256valid
501.0ms3686×256infinite
0.0ms256valid
Precisions
Click to see histograms. Total time spent on operations: 515.0ms
Operation ival-mult, time spent: 360.0ms, 70.0% of total-time
Operation ival-sub, time spent: 104.0ms, 20.0% of total-time
Operation ival-add, time spent: 42.0ms, 8.0% of total-time
Operation const, time spent: 9.0ms, 2.0% of total-time
Bogosity

preprocess186.0ms (13.4%)

Algorithm
egg-herbie
Rules
2064×unsub-neg
1136×fma-define
840×sub-neg
776×distribute-lft-out
744×distribute-lft-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
042591
1149519
2395483
31504301
44596301
56840301
67603301
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
(-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 x.re) (neg.f64 x.re)) (*.f64 x.im x.im)) (neg.f64 x.re)) (*.f64 (+.f64 (*.f64 (neg.f64 x.re) x.im) (*.f64 x.im (neg.f64 x.re))) x.im))
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 (neg.f64 x.im) (neg.f64 x.im))) x.re) (*.f64 (+.f64 (*.f64 x.re (neg.f64 x.im)) (*.f64 (neg.f64 x.im) x.re)) (neg.f64 x.im)))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 x.re) (neg.f64 x.re)) (*.f64 x.im x.im)) (neg.f64 x.re)) (*.f64 (+.f64 (*.f64 (neg.f64 x.re) x.im) (*.f64 x.im (neg.f64 x.re))) x.im)))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 (neg.f64 x.im) (neg.f64 x.im))) x.re) (*.f64 (+.f64 (*.f64 x.re (neg.f64 x.im)) (*.f64 (neg.f64 x.im) x.re)) (neg.f64 x.im))))
(-.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)) x.im) (*.f64 (+.f64 (*.f64 x.im x.re) (*.f64 x.re x.im)) x.re))
Outputs
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re x.im (*.f64 x.re x.im))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.re (*.f64 (*.f64 x.im #s(literal -2 binary64)) x.im)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal -3 binary64)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 x.re (*.f64 x.im (*.f64 x.im #s(literal -3 binary64)))))
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re x.im (*.f64 x.re x.im))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.re (*.f64 (*.f64 x.im #s(literal -2 binary64)) x.im)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal -3 binary64)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 x.re (*.f64 x.im (*.f64 x.im #s(literal -3 binary64)))))
(-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 x.re) (neg.f64 x.re)) (*.f64 x.im x.im)) (neg.f64 x.re)) (*.f64 (+.f64 (*.f64 (neg.f64 x.re) x.im) (*.f64 x.im (neg.f64 x.re))) x.im))
(-.f64 (*.f64 (neg.f64 x.re) (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re (neg.f64 x.im) (*.f64 x.re (neg.f64 x.im)))))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re))) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)) (*.f64 #s(literal 2 binary64) (*.f64 x.im (*.f64 x.re x.im))))
(-.f64 (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal 3 binary64)) (pow.f64 x.re #s(literal 3 binary64)))
(-.f64 (*.f64 x.im (*.f64 x.im (*.f64 x.re #s(literal 3 binary64)))) (pow.f64 x.re #s(literal 3 binary64)))
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 (neg.f64 x.im) (neg.f64 x.im))) x.re) (*.f64 (+.f64 (*.f64 x.re (neg.f64 x.im)) (*.f64 (neg.f64 x.im) x.re)) (neg.f64 x.im)))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re x.im (*.f64 x.re x.im))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.re (*.f64 (*.f64 x.im #s(literal -2 binary64)) x.im)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal -3 binary64)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 x.re (*.f64 x.im (*.f64 x.im #s(literal -3 binary64)))))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 (neg.f64 x.re) (neg.f64 x.re)) (*.f64 x.im x.im)) (neg.f64 x.re)) (*.f64 (+.f64 (*.f64 (neg.f64 x.re) x.im) (*.f64 x.im (neg.f64 x.re))) x.im)))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re x.im (*.f64 x.re x.im))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) (*.f64 x.re (*.f64 (*.f64 x.im #s(literal -2 binary64)) x.im)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal -3 binary64)))
(+.f64 (pow.f64 x.re #s(literal 3 binary64)) (*.f64 x.re (*.f64 x.im (*.f64 x.im #s(literal -3 binary64)))))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 (neg.f64 x.im) (neg.f64 x.im))) x.re) (*.f64 (+.f64 (*.f64 x.re (neg.f64 x.im)) (*.f64 (neg.f64 x.im) x.re)) (neg.f64 x.im))))
(-.f64 (*.f64 (neg.f64 x.re) (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))) (*.f64 x.im (fma.f64 x.re (neg.f64 x.im) (*.f64 x.re (neg.f64 x.im)))))
(-.f64 (*.f64 x.re (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re))) (*.f64 x.im (neg.f64 (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im)))))
(fma.f64 x.re (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)) (*.f64 #s(literal 2 binary64) (*.f64 x.im (*.f64 x.re x.im))))
(-.f64 (*.f64 (*.f64 x.re (*.f64 x.im x.im)) #s(literal 3 binary64)) (pow.f64 x.re #s(literal 3 binary64)))
(-.f64 (*.f64 x.im (*.f64 x.im (*.f64 x.re #s(literal 3 binary64)))) (pow.f64 x.re #s(literal 3 binary64)))
(-.f64 (*.f64 (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re)) x.im) (*.f64 (+.f64 (*.f64 x.im x.re) (*.f64 x.re x.im)) x.re))
(-.f64 (*.f64 x.im (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re))) (*.f64 x.re (fma.f64 x.re x.im (*.f64 x.re x.im))))
(-.f64 (*.f64 (*.f64 x.im (+.f64 x.re x.im)) (-.f64 x.im x.re)) (*.f64 x.re (*.f64 #s(literal 2 binary64) (*.f64 x.re x.im))))
(fma.f64 x.re (*.f64 (*.f64 x.re x.im) #s(literal -2 binary64)) (*.f64 x.im (-.f64 (*.f64 x.im x.im) (*.f64 x.re x.re))))
(+.f64 (pow.f64 x.im #s(literal 3 binary64)) (*.f64 (*.f64 x.re (*.f64 x.re x.im)) #s(literal -3 binary64)))
(-.f64 (pow.f64 x.im #s(literal 3 binary64)) (*.f64 x.re (*.f64 x.im (*.f64 x.re #s(literal 3 binary64)))))
Symmetry

(abs x.im)

(negabs x.re)

Compiler

Compiled 76 to 12 computations (84.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 18.0ms
Operation ival-mult, time spent: 13.0ms, 73.0% of total-time
Operation ival-sub, time spent: 3.0ms, 17.0% of total-time
Operation ival-add, time spent: 1.0ms, 6.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

end0.0ms (0%)

Profiling

Loading profile data...