Destination given bearing on a great circle

Time bar (total: 3.9s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze929.0ms (23.5%)

Memory
4.9MiB live, 282.3MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
0%0%99.8%0.2%0%0%0%9
0%0%99.8%0.2%0%0%0%10
1.6%1.6%98.2%0.2%0%0%0%11
1.6%1.6%98.2%0.2%0%0%0%12
Compiler

Compiled 35 to 25 computations (28.6% saved)

sample68.0ms (1.7%)

Memory
4.8MiB live, 20.3MiB allocated
Samples
56.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 48.0ms
ival-sin: 19.0ms (39.3% of total)
ival-cos: 13.0ms (26.9% of total)
ival-mult: 8.0ms (16.5% of total)
ival-asin: 3.0ms (6.2% of total)
ival-add: 2.0ms (4.1% of total)
ival-atan2: 2.0ms (4.1% of total)
ival-sub: 1.0ms (2.1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
Bogosity

explain2.7s (67.9%)

Memory
5.9MiB live, 1 721.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
10129(4.142559468850534e+146 5.692967606033075e+290 6.425141013599755e-87 -2.8111904632596083e-33 1.8202224131141228e-70)0-(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))
2216(4.142559468850534e+146 5.692967606033075e+290 6.425141013599755e-87 -2.8111904632596083e-33 1.8202224131141228e-70)0-(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))
00-0-(cos.f64 theta)
00-0-theta
00-0-(sin.f64 theta)
00-0-(*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))
00-0-(*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1))
00-0-delta
00-0-(sin.f64 phi1)
00-0-(*.f64 (sin.f64 phi1) (cos.f64 delta))
00-0-lambda1
00-0-(atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))))))
055(6.143902631309617e+103 -1.4121442257826494e-214 4.745297443768904e+210 1.1926001838785307e-280 1.2217311961118487e-132)0-(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))
00-0-(*.f64 (sin.f64 theta) (sin.f64 delta))
00-0-phi1
00-0-(*.f64 (cos.f64 phi1) (sin.f64 delta))
00-0-(*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))
060(4.142559468850534e+146 5.692967606033075e+290 6.425141013599755e-87 -2.8111904632596083e-33 1.8202224131141228e-70)0-(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
00-0-(sin.f64 delta)
04(2.3471798604272963e+219 -1.7849188669424827e-20 -7.081266421268813e-282 -1.237709951846949e-196 -2.1920967544821538e+192)0-(sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))
00-0-(cos.f64 delta)
00-0-(cos.f64 phi1)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
asin.f64(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))sensitivity2180
+.f64(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))cancellation600
-.f64(-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))cancellation510
+.f64(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))cancellation200
sin.f64(sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))cancelation40
Confusion
Predicted +Predicted -
+20
-23321
Precision
0.00851063829787234
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+200
-233021
Precision?
0.00851063829787234
Recall?
1.0
Freqs
test
numberfreq
021
1141
273
318
43
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
18.328125
Average Time
0.07159423828125
Samples
728.0ms3 072×0valid
Compiler

Compiled 7 512 to 1 128 computations (85% saved)

Precisions
Click to see histograms. Total time spent on operations: 573.0ms
ival-sin: 213.0ms (37.2% of total)
ival-cos: 160.0ms (27.9% of total)
ival-mult: 98.0ms (17.1% of total)
ival-asin: 37.0ms (6.5% of total)
ival-add: 25.0ms (4.4% of total)
ival-atan2: 23.0ms (4% of total)
ival-sub: 12.0ms (2.1% of total)
ival-true: 3.0ms (0.5% of total)
adjust: 1.0ms (0.2% of total)
ival-assert: 1.0ms (0.2% of total)

preprocess242.0ms (6.1%)

Memory
-4.6MiB live, 10.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0179677
1399672
2699670
31226668
42722668
54034668
64664668
75393668
85778668
95943668
106050668
116182668
126432668
136965668
147098668
157124668
167124668
177124668
02233
04033
15733
28233
39733
411333
514133
618933
723833
832133
936033
1039433
1144633
1253733
1367133
1482233
15111733
16118933
17120833
18121033
19121333
20121533
0121532
Stop Event
iter limit
saturated
iter limit
node limit
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
(+.f64 (atan2.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 theta) (sin.f64 delta))) (fma.f64 (neg.f64 (sin.f64 phi1)) (sin.f64 (asin.f64 (fma.f64 (cos.f64 theta) (*.f64 (cos.f64 phi1) (sin.f64 delta)) (*.f64 (sin.f64 phi1) (cos.f64 delta))))) (cos.f64 delta))) lambda1)
Symmetry

(abs phi2)

Compiler

Compiled 33 to 23 computations (30.3% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 5 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
Compiler

Compiled 66 to 46 computations (30.3% saved)

simplify24.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02233
13533
24733
35333
45733
55833
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (*.f64 (sin.f64 theta) (sin.f64 delta)) (cos.f64 phi1)) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 phi1) (sin.f64 (asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))))))))
(+.f64 (atan2.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 delta) (sin.f64 theta))) (-.f64 (cos.f64 delta) (*.f64 (sin.f64 (asin.f64 (+.f64 (*.f64 (cos.f64 theta) (*.f64 (cos.f64 phi1) (sin.f64 delta))) (*.f64 (sin.f64 phi1) (cos.f64 delta))))) (sin.f64 phi1)))) lambda1)

soundness0.0ms (0%)

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

Compiled 33 to 23 computations (30.3% saved)

preprocess3.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated
Remove

(abs phi2)

Compiler

Compiled 264 to 184 computations (30.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...