Statistics.Distribution.Binomial:directEntropy from math-functions-0.1.5.2

Time bar (total: 951.0ms)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
100%50%0%0%0%50%0%2
Compiler

Compiled 6 to 5 computations (16.7% saved)

sample554.0ms (58.3%)

Memory
-6.8MiB live, 1 002.7MiB allocated; 194ms collecting garbage
Samples
385.0ms8 255×0valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 197.0ms
ival-log: 141.0ms (71.7% of total)
ival-mult!: 54.0ms (27.4% of total)
adjust: 2.0ms (1% of total)
Bogosity

preprocess66.0ms (7%)

Memory
-32.9MiB live, 60.2MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0714
11914
23414
36614
412014
537114
6243313
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 x (log.f64 x))
Symmetry

(negabs x)

Compiler

Compiled 8 to 6 computations (25% saved)

series61.0ms (6.4%)

Memory
17.3MiB live, 111.7MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01539
Stop Event
iter-limit
Counts
3 → 5
Calls
Call 1
Inputs
(*.f64 x (log.f64 x))
x
(log.f64 x)
Outputs
#s(approx (* x (log x)) (*.f64 x (log.f64 x)))
#s(approx x x)
#s(approx (log x) (log.f64 x))
#s(approx (* x (log x)) (*.f64 #s(literal -1 binary64) (*.f64 x (log.f64 (/.f64 #s(literal 1 binary64) x)))))
#s(approx (log x) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) x))))
Calls

3 calls:

TimeVariablePoint
31.0ms
x
0
13.0ms
x
-inf
12.0ms
x
inf

rewrite7.0ms (0.8%)

Memory
12.6MiB live, 12.6MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037
057
187
087
Stop Event
iter-limit
saturated
iter-limit
Counts
3 → 5
Calls
Call 1
Inputs
(*.f64 x (log.f64 x))
x
(log.f64 x)
Outputs
(*.f64 (log.f64 x) x)
(*.f64 x (log.f64 x))
(log.f64 (pow.f64 x x))
x
(log.f64 x)

eval1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Compiler

Compiled 56 to 24 computations (57.1% saved)

prune1.0ms (0.1%)

Memory
1.9MiB live, 1.9MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New617
Fresh000
Picked011
Done000
Total628
Accuracy
99.7%
Counts
8 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 x (log.f64 x))
8.9%
(log.f64 (pow.f64 x x))
Compiler

Compiled 8 to 6 computations (25% saved)

series34.0ms (3.6%)

Memory
4.3MiB live, 50.0MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
078224
Stop Event
iter-limit
Counts
3 → 10
Calls
Call 1
Inputs
(log.f64 (pow.f64 x x))
(pow.f64 x x)
x
Outputs
#s(approx (log (pow x x)) (*.f64 x (log.f64 x)))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64))))))))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/6 binary64) (*.f64 x (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (pow.f64 (log.f64 x) #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64)))))))))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64))) (*.f64 x (fma.f64 #s(literal 1/24 binary64) (*.f64 x (fma.f64 #s(literal -6 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal -4 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal 12 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (pow.f64 (log.f64 x) #s(literal 4 binary64))))))) (*.f64 #s(literal 1/6 binary64) (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (pow.f64 (log.f64 x) #s(literal 3 binary64))))))))))))
#s(approx (pow x x) #s(literal 1 binary64))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (log.f64 x))))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (+.f64 (log.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 x (pow.f64 (log.f64 x) #s(literal 2 binary64))))))))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/6 binary64) (*.f64 x (pow.f64 (log.f64 x) #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)))))))))
#s(approx x x)
#s(approx (pow x x) (pow.f64 x x))
Calls

3 calls:

TimeVariablePoint
16.0ms
x
inf
14.0ms
x
-inf
1.0ms
x
0

rewrite6.0ms (0.6%)

Memory
7.7MiB live, 7.7MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038
058
058
Stop Event
iter-limit
saturated
iter-limit
Counts
3 → 3
Calls
Call 1
Inputs
(log.f64 (pow.f64 x x))
(pow.f64 x x)
x
Outputs
(log.f64 (pow.f64 x x))
(pow.f64 x x)
x

eval5.0ms (0.5%)

Memory
-41.2MiB live, 3.5MiB allocated; 5ms collecting garbage
Compiler

Compiled 234 to 76 computations (67.5% saved)

prune1.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New9110
Fresh000
Picked011
Done011
Total9312
Accuracy
99.7%
Counts
12 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 x (log.f64 x))
8.9%
(log.f64 (pow.f64 x x))
3.8%
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
Compiler

Compiled 14 to 11 computations (21.4% saved)

series16.0ms (1.7%)

Memory
31.7MiB live, 31.7MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
077221
Stop Event
iter-limit
Counts
3 → 9
Calls
Call 1
Inputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
#s(approx (pow x x) #s(literal 1 binary64))
#s(literal 1 binary64)
Outputs
#s(approx (log (pow x x)) (*.f64 x (log.f64 x)))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64))))))))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/6 binary64) (*.f64 x (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (pow.f64 (log.f64 x) #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64)))))))))
#s(approx (log (pow x x)) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/2 binary64) (fma.f64 #s(literal -1 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)) (pow.f64 (log.f64 x) #s(literal 2 binary64))) (*.f64 x (fma.f64 #s(literal 1/24 binary64) (*.f64 x (fma.f64 #s(literal -6 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal -4 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (fma.f64 #s(literal 12 binary64) (pow.f64 (log.f64 x) #s(literal 4 binary64)) (pow.f64 (log.f64 x) #s(literal 4 binary64))))))) (*.f64 #s(literal 1/6 binary64) (fma.f64 #s(literal -3 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (fma.f64 #s(literal 2 binary64) (pow.f64 (log.f64 x) #s(literal 3 binary64)) (pow.f64 (log.f64 x) #s(literal 3 binary64))))))))))))
#s(approx (pow x x) #s(literal 1 binary64))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (log.f64 x))))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (+.f64 (log.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 x (pow.f64 (log.f64 x) #s(literal 2 binary64))))))))
#s(approx (pow x x) (+.f64 #s(literal 1 binary64) (*.f64 x (+.f64 (log.f64 x) (*.f64 x (fma.f64 #s(literal 1/6 binary64) (*.f64 x (pow.f64 (log.f64 x) #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 (log.f64 x) #s(literal 2 binary64)))))))))
#s(approx (pow x x) (pow.f64 x x))
Calls

3 calls:

TimeVariablePoint
6.0ms
x
inf
6.0ms
x
-inf
0.0ms
x
0

rewrite166.0ms (17.5%)

Memory
16.0MiB live, 109.5MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0512
0612
1912
21612
34712
424412
5203412
0426412
Stop Event
iter-limit
node-limit
iter-limit
Counts
3 → 3
Calls
Call 1
Inputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
#s(approx (pow x x) #s(literal 1 binary64))
#s(literal 1 binary64)
Outputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
#s(approx (pow x x) #s(literal 1 binary64))
#s(literal 1 binary64)

eval3.0ms (0.3%)

Memory
-43.4MiB live, 2.8MiB allocated; 3ms collecting garbage
Compiler

Compiled 220 to 71 computations (67.7% saved)

prune1.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New808
Fresh000
Picked011
Done022
Total8311
Accuracy
99.7%
Counts
11 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(*.f64 x (log.f64 x))
8.9%
(log.f64 (pow.f64 x x))
3.8%
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
Compiler

Compiled 14 to 11 computations (21.4% saved)

regimes6.0ms (0.6%)

Memory
13.7MiB live, 13.7MiB allocated; 0ms collecting garbage
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
3 → 1
Calls
Call 1
Inputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
Outputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
Call 2
Inputs
(log.f64 #s(approx (pow x x) #s(literal 1 binary64)))
(*.f64 x (log.f64 x))
(log.f64 (pow.f64 x x))
Outputs
(*.f64 x (log.f64 x))
Calls

4 calls:

2.0ms
(*.f64 x (log.f64 x))
1.0ms
x
1.0ms
x
1.0ms
(*.f64 x (log.f64 x))
Results
AccuracySegmentsBranch
3.8%1(*.f64 x (log.f64 x))
3.8%1x
99.6%1(*.f64 x (log.f64 x))
99.6%1x
Compiler

Compiled 24 to 17 computations (29.2% saved)

derivations1.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Stop Event
done
Compiler

Compiled 10 to 7 computations (30% saved)

preprocess20.0ms (2.1%)

Memory
-11.6MiB live, 34.0MiB allocated; 5ms collecting garbage
Remove

(negabs x)

Compiler

Compiled 34 to 26 computations (23.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...