Optimal throwing angle

Time bar (total: 1.1s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze27.0ms (2.4%)

Memory
0.4MiB live, 9.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
25%25%74.9%0.1%0%0%0%3
37.5%37.5%62.4%0.1%0%0%0%4
50%43.7%43.7%0.1%0%12.5%0%5
60.7%53.1%34.3%0.1%0%12.5%0%6
72.2%60.9%23.4%0.1%0%15.6%0%7
79.4%63.2%16.4%0.1%0%20.3%0%8
85.6%67.5%11.3%0.1%0%21.1%0%9
89.6%68.9%8%0.1%0%23%0%10
92.7%71.1%5.6%0.1%0%23.2%0%11
94.8%71.9%4%0.1%0%24.1%0%12
Compiler

Compiled 15 to 13 computations (13.3% saved)

sample27.0ms (2.5%)

Memory
1.9MiB live, 9.4MiB allocated
Samples
19.0ms260×0valid
0.0ms0invalid
Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult: 5.0ms (34.6% of total)
const: 3.0ms (20.8% of total)
ival-div: 2.0ms (13.8% of total)
ival-atan: 2.0ms (13.8% of total)
ival-sqrt: 2.0ms (13.8% of total)
ival-sub: 1.0ms (6.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain979.0ms (88.4%)

Memory
7.5MiB live, 737.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
880-0-(sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))
00-0-(*.f64 v v)
00-0-(*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64))
00-0-(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
00-0-v
00-0-#s(literal 2 binary64)
00-0-(*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)
07(-55539.07110263531 14.356553119196834)0-(-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H))
00-0-H
00-0-#s(literal 49/5 binary64)
00-0-(/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H))))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))oflow-rescue880
(-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H))overflow88
(*.f64 v v)overflow88
-.f64(-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H))cancellation70
Confusion
Predicted +Predicted -
+880
-7161
Precision
0.9263157894736842
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+8800
-70161
Precision?
0.9263157894736842
Recall?
1.0
Freqs
test
numberfreq
0161
195
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
6.359619140625
Average Time
0.024842262268066406
Samples
256.0ms3 060×0valid
6.0ms12×5exit
Compiler

Compiled 2 304 to 552 computations (76% saved)

Precisions
Click to see histograms. Total time spent on operations: 173.0ms
ival-mult: 55.0ms (31.8% of total)
const: 37.0ms (21.4% of total)
ival-atan: 25.0ms (14.4% of total)
ival-sqrt: 19.0ms (11% of total)
ival-div: 18.0ms (10.4% of total)
ival-sub: 12.0ms (6.9% of total)
adjust: 2.0ms (1.2% of total)
ival-true: 2.0ms (1.2% of total)
exact: 2.0ms (1.2% of total)
ival-assert: 1.0ms (0.6% of total)

preprocess50.0ms (4.5%)

Memory
-1.0MiB live, 6.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02861
16359
211859
322359
439159
563959
686659
7100959
8115459
9118859
10120459
01111
01911
12611
23611
34511
46111
58211
612611
717311
822911
928611
1037511
1141511
1250411
1352611
1453411
053410
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
Outputs
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
(atan.f64 (/.f64 v (sqrt.f64 (fma.f64 #s(literal -98/5 binary64) H (*.f64 v v)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0.1%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
66.5%
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
Compiler

Compiled 26 to 22 computations (15.4% saved)

simplify23.0ms (2.1%)

Memory
-1.6MiB live, 18.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01113
11813
23613
34613
45413
55713
Stop Event
saturated
Calls
Call 1
Inputs
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
Outputs
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 (*.f64 #s(literal 2 binary64) #s(literal 49/5 binary64)) H)))))
(atan.f64 (/.f64 v (sqrt.f64 (-.f64 (*.f64 v v) (*.f64 H (*.f64 #s(literal 49/5 binary64) #s(literal 2 binary64)))))))

soundness0.0ms (0%)

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

Compiled 13 to 11 computations (15.4% saved)

preprocess1.0ms (0.1%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 52 to 44 computations (15.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...