Destination given bearing on a great circle

Time bar (total: 15.3s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze973.0ms (6.3%)

Memory
-3.4MiB live, 281.4MiB 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)

sample72.0ms (0.5%)

Memory
5.0MiB live, 20.1MiB allocated
Samples
60.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 52.0ms
ival-sin: 20.0ms (38.3% of total)
ival-cos: 14.0ms (26.8% of total)
ival-mult: 9.0ms (17.3% of total)
ival-asin: 4.0ms (7.7% of total)
ival-add: 2.0ms (3.8% of total)
ival-atan2: 2.0ms (3.8% of total)
ival-sub: 1.0ms (1.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
Bogosity

explain14.0s (91.5%)

Memory
-66.2MiB live, 6 426.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
91(-3.0437976157163116e-158 310965204031894400.0 -2.783982228214814e+75 1.0178585682232215e+93 -2.308709503161997)3(-1.1959878429538998e-19 1.5161087195262117e+33 -3.9841397757822506e+241 -1.6578270938243691e-227 -5.55283637002636e-305)(-.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)))))))
10-1(-1.6526073489481356e+269 5.196109218876428e+57 3.502193140956199e-174 -4.0247346509770443e+251 10855687691384224000.0)(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta)))
10-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))))))))
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))
00-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)
00-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
-.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)))))))cancellation32
asin.f64(asin.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 delta)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 delta)) (cos.f64 theta))))sensitivity12
Confusion
Predicted +Predicted -
+02
-4250
Precision
0.0
Recall
0.0
Confusion?
Predicted +Predicted MaybePredicted -
+020
-41249
Precision?
0.2857142857142857
Recall?
1.0
Freqs
test
numberfreq
0252
14
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
67.80908203125
Average Time
0.2648792266845703
Samples
5.9s23 040×0valid
Compiler

Compiled 28 260 to 4 320 computations (84.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.7s
ival-sin: 1.7s (36.2% of total)
ival-cos: 1.3s (28.6% of total)
ival-mult: 772.0ms (16.4% of total)
ival-asin: 375.0ms (8% of total)
ival-add: 198.0ms (4.2% of total)
ival-atan2: 188.0ms (4% of total)
ival-sub: 96.0ms (2% of total)
ival-true: 20.0ms (0.4% of total)
ival-assert: 9.0ms (0.2% of total)

preprocess231.0ms (1.5%)

Memory
-0.4MiB 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.8%
(+.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)

simplify22.0ms (0.1%)

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

soundness1.0ms (0%)

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

Compiled 33 to 23 computations (30.3% saved)

preprocess3.0ms (0%)

Memory
1.9MiB live, 1.9MiB 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...