normal distribution

Time bar (total: 2.0s)

analyze30.0ms (1.5%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%6.2%93.8%0%0%0%0
0%0%6.2%93.8%0%0%0%1
50%3.1%3.1%93.8%0%0%0%2
50%3.1%3.1%93.8%0%0%0%3
75%4.7%1.6%93.8%0%0%0%4
75%4.7%1.6%93.8%0%0%0%5
87.5%5.5%0.8%93.8%0%0%0%6
87.5%5.5%0.8%93.8%0%0%0%7
93.8%5.8%0.4%93.8%0%0%0%8
93.8%5.8%0.4%93.8%0%0%0%9
96.9%6%0.2%93.8%0%0%0%10
96.9%6%0.2%93.8%0%0%0%11
98.4%6.1%0.1%93.8%0%0%0%12
Compiler

Compiled 36 to 30 computations (16.7% saved)

sample1.7s (86.6%)

Results
1.7s8256×body256valid
Bogosity

preprocess239.0ms (11.9%)

Algorithm
egg-herbie
Rules
772×fma-def
542×distribute-lft-neg-in
514×distribute-rgt-neg-in
478×distribute-lft-in
458×*-commutative
Problems
256×No Errors
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
047391
1116387
2264379
3594379
41482379
52404379
63947379
76090379
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 (neg.f64 u1))) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) (neg.f64 u2)))) 1/2)
(neg.f64 (+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 (neg.f64 u1))) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2))
(neg.f64 (+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) (neg.f64 u2)))) 1/2))
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u2)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u1))) 1/2)
Outputs
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 u1)))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (*.f64 1/6 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2)))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 u1)))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (*.f64 1/6 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2)))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 (neg.f64 u1))) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2)
(fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) 1/2)
(fma.f64 1/6 (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) 1/2)
(fma.f64 1/6 (*.f64 (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2))) (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) 1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) (neg.f64 u2)))) 1/2)
(fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 u1)))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (*.f64 1/6 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2)))) 1/2)
(fma.f64 1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2)))) 1/2)
(neg.f64 (+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 (neg.f64 u1))) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u2))) 1/2))
(neg.f64 (fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) 1/2))
(-.f64 -1/2 (*.f64 1/6 (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) -1/2)
(fma.f64 (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1))))) -1/6 -1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1)))) (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) -1/6) -1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 (neg.f64 u1)))) (*.f64 (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2))) -1/6) -1/2)
(neg.f64 (+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u1)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) (neg.f64 u2)))) 1/2))
(neg.f64 (fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 u1)))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) (neg.f64 u2)))) 1/2))
(+.f64 -1/2 (*.f64 -1/6 (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))))))
(fma.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) (*.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) -1/6) -1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (*.f64 (cos.f64 (*.f64 2 (*.f64 (PI.f64) u2))) -1/6) -1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u1))) (*.f64 (cos.f64 (*.f64 (PI.f64) (*.f64 -2 u2))) -1/6) -1/2)
(+.f64 (*.f64 (*.f64 (/.f64 1 6) (pow.f64 (*.f64 -2 (log.f64 u2)) 1/2)) (cos.f64 (*.f64 (*.f64 2 (PI.f64)) u1))) 1/2)
(fma.f64 (*.f64 1/6 (sqrt.f64 (*.f64 -2 (log.f64 u2)))) (cos.f64 (*.f64 u1 (*.f64 2 (PI.f64)))) 1/2)
(fma.f64 (sqrt.f64 (*.f64 -2 (log.f64 u2))) (*.f64 1/6 (cos.f64 (*.f64 u1 (*.f64 2 (PI.f64))))) 1/2)
Symmetry

(abs u2)

Compiler

Compiled 86 to 64 computations (25.6% saved)

end0.0ms (0%)

Profiling

Loading profile data...