UniformSampleCone 2

Time bar (total: 3.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze504.0ms (14.9%)

Memory
7.0MiB live, 190.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
0%0%0%100%0%0%0%3
0%0%0%100%0%0%0%4
0%0%0%100%0%0%0%5
25%0%0%100%0%0%0%6
25%0%0%100%0%0%0%7
25%0%0%100%0%0%0%8
25%0%0%100%0%0%0%9
25%0%0%100%0%0%0%10
37.5%0%0%100%0%0%0%11
56.2%0%0%100%0%0%0%12
Compiler

Compiled 113 to 52 computations (54% saved)

sample64.0ms (1.9%)

Memory
-3.4MiB live, 26.3MiB allocated
Samples
47.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 38.0ms
ival-mult: 12.0ms (31.3% of total)
ival-<=: 6.0ms (15.6% of total)
ival-cosu: 4.0ms (10.4% of total)
const: 4.0ms (10.4% of total)
ival-add: 3.0ms (7.8% of total)
ival-sinu: 3.0ms (7.8% of total)
ival-sub: 2.0ms (5.2% of total)
ival-and: 2.0ms (5.2% of total)
ival-sqrt: 2.0ms (5.2% of total)
exact: 1.0ms (2.6% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain2.6s (76.2%)

Memory
8.7MiB live, 1 965.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
20-1(-2.48886293914775e-34 2.875036824929387e-20 1.845911770427205e-17 3.429869593674084e-6 0.49112340807914734 0.00021943915635347366)(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))
00-0-(*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos)
00-0-(-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)))
00-0-yi
00-0-(PI.f32)
00-0-#s(literal 2 binary32)
00-0-(*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)
00-0-(*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))
00-0-(*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi)
01(2.4566525664088458e-32 -126.7129898071289 -57.61368179321289 0.014413846656680107 0.03218109533190727 2.947285142934626e-37)0-(*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi)
00-0-ux
00-0-xi
00-0-(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
00-0-(*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))
00-0-uy
00-0-(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)
00-0-zi
00-0-(*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)))))
00-0-#s(literal 1 binary32)
00-0-maxCos
00-0-(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))
00-0-(cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))
00-0-(*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux)))))
00-0-(+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi))
00-0-(*.f32 uy #s(literal 2 binary32))
00-0-(-.f32 #s(literal 1 binary32) ux)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sin.f32(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))cancelation10
Confusion
Predicted +Predicted -
+03
-1252
Precision
0.0
Recall
0.0
Confusion?
Predicted +Predicted MaybePredicted -
+003
-10252
Precision?
0.0
Recall?
0.0
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
0255
11
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
15.380126953125
Average Time
0.06007862091064453
Samples
462.0ms3 072×0valid
Compiler

Compiled 12 576 to 1 272 computations (89.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 324.0ms
ival-mult: 157.0ms (48.4% of total)
ival-cosu: 42.0ms (12.9% of total)
ival-sinu: 40.0ms (12.3% of total)
ival-sub: 26.0ms (8% of total)
ival-add: 24.0ms (7.4% of total)
ival-sqrt: 21.0ms (6.5% of total)
ival-pi: 10.0ms (3.1% of total)
exact: 3.0ms (0.9% of total)
ival-true: 2.0ms (0.6% of total)
ival-assert: 1.0ms (0.3% of total)

preprocess208.0ms (6.1%)

Memory
3.5MiB live, 53.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02441791
17711759
227331242
375061242
02665
04465
18365
221646
378146
4264846
5466646
0829743
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
Outputs
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
(fma.f32 (fma.f32 yi (sin.f32 (*.f32 (PI.f32) (*.f32 #s(literal 2 binary32) uy))) (*.f32 xi (cos.f32 (*.f32 (PI.f32) (*.f32 #s(literal 2 binary32) uy))))) (sqrt.f32 (fma.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) ux) ux) (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) maxCos) #s(literal 1 binary32))) (*.f32 zi (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) ux)))
Compiler

Compiled 65 to 26 computations (60% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 6 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.0%
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
Compiler

Compiled 130 to 52 computations (60% saved)

simplify28.0ms (0.8%)

Memory
-0.6MiB live, 18.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02665
14765
26265
37665
48965
511065
614465
722465
830365
933765
1035065
1136265
1236765
1336865
Stop Event
saturated
Calls
Call 1
Inputs
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
Outputs
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi))
(-.f32 (+.f32 (*.f32 yi (*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 #s(literal 2 binary32) uy))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) ux) (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) ux)))))) (*.f32 xi (*.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) ux) (*.f32 (*.f32 maxCos (-.f32 #s(literal 1 binary32) ux)) ux)))) (cos.f32 (*.f32 (PI.f32) (*.f32 #s(literal 2 binary32) uy)))))) (*.f32 (*.f32 (*.f32 (-.f32 ux #s(literal 1 binary32)) maxCos) ux) zi))

soundness0.0ms (0%)

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

Compiled 65 to 29 computations (55.4% saved)

preprocess1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Compiler

Compiled 260 to 110 computations (57.7% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...