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

Time bar (total: 18.1s)

analyze306.0ms (1.7%)

Memory
2.9MiB live, 132.7MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
3.1%3.1%96.7%0.2%0%0%0%8
4.7%4.7%95.1%0.2%0%0%0%9
4.7%4.7%95.1%0.2%0%0%0%10
16.4%16.4%83.4%0.2%0%0%0%11
18.8%17.5%76%0.2%0%6.2%0%12
Compiler

Compiled 33 to 27 computations (18.2% saved)

sample17.3s (95.8%)

Memory
-4.6MiB live, 3 403.9MiB allocated
Samples
2.0s4 573×1valid-baseline
1.4s4 573×1valid-rival
1.4s4 573×1valid-sollya
407.0ms3 683×0valid-sollya
304.0ms3 683×0valid-baseline
296.0ms3 683×0valid-rival
Bogosity

preprocess418.0ms (2.3%)

Memory
-11.4MiB live, 26.9MiB allocated
Algorithm
egg-herbie
Rules
1 592×fmm-def
430×sub-neg
347×fma-define
313×distribute-lft-neg-in
313×times-frac
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
076912
1161832
2423736
31139734
43217648
55922648
66642648
76898648
87105648
97238648
107310648
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (neg.f64 y) (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 (neg.f64 z))))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) (neg.f64 t)))
(neg.f64 (-.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t)))
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (neg.f64 y) (exp.f64 z)))) t)))
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 (neg.f64 z))))) t)))
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) (neg.f64 t))))
(-.f64 y (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 x (exp.f64 z)))) t))
(-.f64 z (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 x)))) t))
(-.f64 t (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) x))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 z (exp.f64 y)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) t) (*.f64 t (exp.f64 z)))) y))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 t)))) z))
Outputs
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) t))
(-.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 (neg.f64 x) (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(-.f64 (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) (neg.f64 t)) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) (neg.f64 t)) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) (neg.f64 t)) x)
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (neg.f64 y) (exp.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (exp.f64 z) (neg.f64 y)))) t))
(-.f64 x (/.f64 (log.f64 (fma.f64 (exp.f64 z) (neg.f64 y) (+.f64 #s(literal 1 binary64) y))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (exp.f64 z)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (neg.f64 (expm1.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 (neg.f64 z))))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (/.f64 y (exp.f64 z)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 z))))) t))
(-.f64 x (/.f64 (log1p.f64 (-.f64 (/.f64 y (exp.f64 z)) y)) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 (neg.f64 z)))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) (neg.f64 t)))
(+.f64 x (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) t))
(neg.f64 (-.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t)))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) (neg.f64 t)))
(+.f64 x (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) t))
(+.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) t))
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (neg.f64 y) (exp.f64 z)))) t)))
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) (neg.f64 y)) (*.f64 (exp.f64 z) (neg.f64 y)))) t)))
(+.f64 (neg.f64 x) (/.f64 (log.f64 (fma.f64 (exp.f64 z) (neg.f64 y) (+.f64 #s(literal 1 binary64) y))) t))
(-.f64 (/.f64 (log1p.f64 (*.f64 y (-.f64 #s(literal 1 binary64) (exp.f64 z)))) t) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (neg.f64 (expm1.f64 z)))) t) x)
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 (neg.f64 z))))) t)))
(+.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (/.f64 y (exp.f64 z)))) t))
(-.f64 (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 z))))) t) x)
(-.f64 (/.f64 (log1p.f64 (-.f64 (/.f64 y (exp.f64 z)) y)) t) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (expm1.f64 (neg.f64 z)))) t) x)
(neg.f64 (-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) (neg.f64 t))))
(-.f64 (neg.f64 x) (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
(-.f64 (neg.f64 x) (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) t))
(-.f64 (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) (neg.f64 t)) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) (neg.f64 t)) x)
(-.f64 (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) (neg.f64 t)) x)
(-.f64 y (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 x (exp.f64 z)))) t))
(-.f64 y (/.f64 (log.f64 (fma.f64 x (exp.f64 z) (-.f64 #s(literal 1 binary64) x))) t))
(-.f64 y (/.f64 (log1p.f64 (*.f64 x (+.f64 #s(literal -1 binary64) (exp.f64 z)))) t))
(-.f64 y (/.f64 (log1p.f64 (*.f64 x (+.f64 (exp.f64 z) #s(literal -1 binary64)))) t))
(-.f64 y (/.f64 (log1p.f64 (*.f64 x (expm1.f64 z))) t))
(-.f64 z (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 x)))) t))
(-.f64 z (/.f64 (log.f64 (fma.f64 y (exp.f64 x) (-.f64 #s(literal 1 binary64) y))) t))
(-.f64 z (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 x)))) t))
(-.f64 z (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 x) #s(literal -1 binary64)))) t))
(-.f64 z (/.f64 (log1p.f64 (*.f64 y (expm1.f64 x))) t))
(-.f64 t (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) x))
(-.f64 t (/.f64 (log.f64 (fma.f64 y (exp.f64 z) (-.f64 #s(literal 1 binary64) y))) x))
(-.f64 t (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 z)))) x))
(-.f64 t (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 z) #s(literal -1 binary64)))) x))
(-.f64 t (/.f64 (log1p.f64 (*.f64 y (expm1.f64 z))) x))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) z) (*.f64 z (exp.f64 y)))) t))
(-.f64 x (/.f64 (log.f64 (fma.f64 z (exp.f64 y) (-.f64 #s(literal 1 binary64) z))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 z (+.f64 #s(literal -1 binary64) (exp.f64 y)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 z (+.f64 (exp.f64 y) #s(literal -1 binary64)))) t))
(-.f64 x (/.f64 (log1p.f64 (*.f64 z (expm1.f64 y))) t))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) t) (*.f64 t (exp.f64 z)))) y))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) t) (*.f64 (exp.f64 z) t))) y))
(-.f64 x (/.f64 (log.f64 (fma.f64 (exp.f64 z) t (-.f64 #s(literal 1 binary64) t))) y))
(-.f64 x (/.f64 (log1p.f64 (*.f64 t (+.f64 #s(literal -1 binary64) (exp.f64 z)))) y))
(-.f64 x (/.f64 (log1p.f64 (*.f64 t (+.f64 (exp.f64 z) #s(literal -1 binary64)))) y))
(-.f64 x (/.f64 (log1p.f64 (*.f64 t (expm1.f64 z))) y))
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 t)))) z))
(-.f64 x (/.f64 (log.f64 (fma.f64 y (exp.f64 t) (-.f64 #s(literal 1 binary64) y))) z))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (exp.f64 t)))) z))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (+.f64 (exp.f64 t) #s(literal -1 binary64)))) z))
(-.f64 x (/.f64 (log1p.f64 (*.f64 y (expm1.f64 t))) z))
Compiler

Compiled 17 to 12 computations (29.4% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 4 to 4 computations (0% saved)

prune1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.4%
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
Compiler

Compiled 34 to 24 computations (29.4% saved)

simplify3.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Rules
+-commutative
sub-neg
*-commutative
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02054
13154
24254
35054
45654
55854
Stop Event
saturated
Calls
Call 1
Inputs
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))
Outputs
(-.f64 x (/.f64 (log.f64 (+.f64 (-.f64 #s(literal 1 binary64) y) (*.f64 y (exp.f64 z)))) t))

soundness0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Stop Event
fuel
Compiler

Compiled 17 to 12 computations (29.4% saved)

preprocess28.0ms (0.2%)

Memory
1.6MiB live, 35.0MiB allocated
Compiler

Compiled 158 to 98 computations (38% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...