UniformSampleCone 2

Time bar (total: 3.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze487.0ms (14.4%)

Memory
6.8MiB 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)

sample62.0ms (1.8%)

Memory
-3.1MiB live, 26.7MiB allocated
Samples
45.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 36.0ms
ival-mult: 11.0ms (30.2% of total)
ival-<=: 7.0ms (19.2% of total)
ival-cosu: 4.0ms (11% of total)
const: 4.0ms (11% of total)
ival-sinu: 3.0ms (8.2% of total)
ival-add: 2.0ms (5.5% of total)
ival-sub: 2.0ms (5.5% of total)
ival-and: 2.0ms (5.5% of total)
ival-sqrt: 2.0ms (5.5% of total)
exact: 1.0ms (2.7% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain2.6s (76.3%)

Memory
9.1MiB live, 1 978.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
20-1(7.439547657991939e-19 7.103623426186004e-26 9.20656416168524e-20 0.002096749609336257 0.7583074569702148 8.914924620739839e-8)(cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))
10-0-(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(-3.3585573299557266e-38 1.1613318936108656e-21 -221.60305786132813 4.241717761033215e-6 0.003084766212850809 3.1847353910253894e-34)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-(*.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
cos.f32(cos.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))cancelation10
*.f32(*.f32 (*.f32 (*.f32 (-.f32 #s(literal 1 binary32) ux) maxCos) ux) zi)n*u10
sin.f32(sin.f32 (*.f32 (*.f32 uy #s(literal 2 binary32)) (PI.f32)))cancelation10
Confusion
Predicted +Predicted -
+01
-3252
Precision
0.0
Recall
0.0
Confusion?
Predicted +Predicted MaybePredicted -
+010
-30252
Precision?
0.25
Recall?
1.0
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
0253
13
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
15.8076171875
Average Time
0.061748504638671875
Samples
449.0ms3 072×0valid
Compiler

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

Precisions
Click to see histograms. Total time spent on operations: 316.0ms
ival-mult: 151.0ms (47.8% of total)
ival-cosu: 43.0ms (13.6% of total)
ival-sinu: 42.0ms (13.3% of total)
ival-sub: 25.0ms (7.9% of total)
ival-add: 22.0ms (7% of total)
ival-sqrt: 18.0ms (5.7% of total)
ival-pi: 9.0ms (2.8% of total)
exact: 3.0ms (0.9% of total)
ival-true: 2.0ms (0.6% of total)
adjust: 1.0ms (0.3% of total)
ival-assert: 1.0ms (0.3% of total)

preprocess224.0ms (6.6%)

Memory
5.2MiB live, 53.8MiB 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
-7.9MiB 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
98.8%
(+.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)

simplify27.0ms (0.8%)

Memory
2.8MiB 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...