System.Random.MWC.Distributions:gamma from mwc-random-0.13.3.2

Time bar (total: 1.4s)

analyze1.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
100%49.9%0%0.1%0%49.9%0%4
Compiler

Compiled 16 to 12 computations (25% saved)

sample1.2s (88.1%)

Results
984.0ms7160×body256valid
241.0ms1096×body256infinite
Bogosity

preprocess165.0ms (11.8%)

Algorithm
egg-herbie
Rules
423×distribute-neg-in
416×*-commutative
407×associate--l-
359×associate-+r+
314×distribute-lft-in
Problems
256×No Errors
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047509
1151493
2420485
31489481
45163481
57357481
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 (neg.f64 x) 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 x 1/2) (*.f64 (neg.f64 y) (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z)))))
(neg.f64 (+.f64 (*.f64 (neg.f64 x) 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z)))))
(neg.f64 (+.f64 (*.f64 x 1/2) (*.f64 (neg.f64 y) (+.f64 (-.f64 1 z) (log.f64 z)))))
(neg.f64 (+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z))))))
(+.f64 (*.f64 y 1/2) (*.f64 x (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 z 1/2) (*.f64 y (+.f64 (-.f64 1 x) (log.f64 x))))
(+.f64 (*.f64 x 1/2) (*.f64 z (+.f64 (-.f64 1 y) (log.f64 y))))
Outputs
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 y (+.f64 (-.f64 1 z) (log.f64 z)) (*.f64 x 1/2))
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 y (+.f64 (-.f64 1 z) (log.f64 z)) (*.f64 x 1/2))
(+.f64 (*.f64 (neg.f64 x) 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 (neg.f64 x) 1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 y (+.f64 (-.f64 1 z) (log.f64 z)) (*.f64 x -1/2))
(fma.f64 x -1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(+.f64 (*.f64 x 1/2) (*.f64 (neg.f64 y) (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 (+.f64 (-.f64 1 z) (log.f64 z)) (neg.f64 y)))
(-.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 -1 (-.f64 z (log.f64 z)))))
(fma.f64 x 1/2 (*.f64 y (-.f64 (+.f64 z -1) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 z (-.f64 -1 (log.f64 z)))))
(+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z)))))
(fma.f64 x 1/2 (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z)))))
(fma.f64 y (+.f64 1 (+.f64 z (log.f64 (neg.f64 z)))) (*.f64 x 1/2))
(fma.f64 x 1/2 (*.f64 y (+.f64 z (+.f64 1 (log.f64 (neg.f64 z))))))
(fma.f64 x 1/2 (*.f64 y (+.f64 (+.f64 1 z) (log.f64 (neg.f64 z)))))
(neg.f64 (+.f64 (*.f64 (neg.f64 x) 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z)))))
(fma.f64 x 1/2 (*.f64 (+.f64 (-.f64 1 z) (log.f64 z)) (neg.f64 y)))
(-.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 -1 (-.f64 z (log.f64 z)))))
(fma.f64 x 1/2 (*.f64 y (-.f64 (+.f64 z -1) (log.f64 z))))
(fma.f64 x 1/2 (*.f64 y (+.f64 z (-.f64 -1 (log.f64 z)))))
(neg.f64 (+.f64 (*.f64 x 1/2) (*.f64 (neg.f64 y) (+.f64 (-.f64 1 z) (log.f64 z)))))
(fma.f64 (neg.f64 x) 1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 y (+.f64 (-.f64 1 z) (log.f64 z)) (*.f64 x -1/2))
(fma.f64 x -1/2 (*.f64 y (+.f64 (-.f64 1 z) (log.f64 z))))
(neg.f64 (+.f64 (*.f64 x 1/2) (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z))))))
(neg.f64 (fma.f64 x 1/2 (*.f64 y (+.f64 (-.f64 1 (neg.f64 z)) (log.f64 (neg.f64 z))))))
(-.f64 (*.f64 x -1/2) (*.f64 y (+.f64 1 (+.f64 z (log.f64 (neg.f64 z))))))
(-.f64 (*.f64 x -1/2) (*.f64 y (+.f64 z (+.f64 1 (log.f64 (neg.f64 z))))))
(fma.f64 x -1/2 (*.f64 y (-.f64 -1 (+.f64 z (log.f64 (neg.f64 z))))))
(fma.f64 x -1/2 (*.f64 y (-.f64 (-.f64 -1 z) (log.f64 (neg.f64 z)))))
(+.f64 (*.f64 y 1/2) (*.f64 x (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 y 1/2 (*.f64 x (+.f64 (-.f64 1 z) (log.f64 z))))
(fma.f64 x (+.f64 (-.f64 1 z) (log.f64 z)) (*.f64 1/2 y))
(+.f64 (*.f64 z 1/2) (*.f64 y (+.f64 (-.f64 1 x) (log.f64 x))))
(fma.f64 z 1/2 (*.f64 y (+.f64 (-.f64 1 x) (log.f64 x))))
(fma.f64 y (+.f64 (-.f64 1 x) (log.f64 x)) (*.f64 1/2 z))
(fma.f64 1/2 z (*.f64 y (+.f64 (-.f64 1 x) (log.f64 x))))
(+.f64 (*.f64 x 1/2) (*.f64 z (+.f64 (-.f64 1 y) (log.f64 y))))
(fma.f64 x 1/2 (*.f64 z (+.f64 (-.f64 1 y) (log.f64 y))))
(fma.f64 z (+.f64 (-.f64 1 y) (log.f64 y)) (*.f64 x 1/2))
(fma.f64 x 1/2 (*.f64 z (-.f64 1 (-.f64 y (log.f64 y)))))
(fma.f64 x 1/2 (*.f64 z (+.f64 1 (-.f64 (log.f64 y) y))))
Compiler

Compiled 43 to 25 computations (41.9% saved)

end0.0ms (0%)

Profiling

Loading profile data...