Distance on a great circle

Time bar (total: 54.0s)

analyze1.7s (3.1%)

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
0%0%99.8%0.2%0%0%0%11
0%0%99.8%0.2%0%0%0%12
Compiler

Compiled 142 to 54 computations (62% saved)

sample52.0s (96.2%)

Results
6.5s7291×1valid-rival
7.6s7173×1valid-rival-baseline
13.4s7126×1valid-sollya
446.0ms908×0valid-rival-baseline
563.0ms904×0valid-sollya
254.0ms797×0valid-rival
Bogosity

preprocess298.0ms (0.6%)

Algorithm
egg-herbie
Rules
700×sub-neg
542×distribute-lft-neg-in
497×fma-neg
484×distribute-rgt-neg-in
432×unsub-neg
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02435660
15585464
214345464
338425368
470105340
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(neg.f64 (*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))))))))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))))))))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(*.f64 lambda1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))))))))))
(*.f64 lambda2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))))))))))
(*.f64 phi1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 phi2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
Outputs
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 (*.f64 (neg.f64 R) #s(literal 2 binary64)) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64))))))))
(neg.f64 (*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))))))))))
(*.f64 R (neg.f64 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 (neg.f64 lambda2)) #s(literal 2 binary64)))))))))))
(*.f64 R (neg.f64 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))))))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda1) lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (neg.f64 lambda2) lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))) (sin.f64 (*.f64 (+.f64 lambda1 lambda2) #s(literal -1/2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 (neg.f64 phi1)) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal -2 binary64)))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal -2 binary64)))
(neg.f64 (*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 (neg.f64 phi2)) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 (neg.f64 phi2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))
(*.f64 (neg.f64 R) (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi1) phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) #s(literal -2 binary64)))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 phi2) phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal -2 binary64)))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (*.f64 (+.f64 phi1 phi2) #s(literal -1/2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal -2 binary64)))
(*.f64 lambda1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))))))))))
(*.f64 lambda1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) lambda1))
(*.f64 #s(literal 2 binary64) (*.f64 lambda1 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 R lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 lambda2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))))))))))
(*.f64 lambda2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))))))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) lambda2))
(*.f64 lambda2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 R) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 phi1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 phi1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R))))))))))
(*.f64 #s(literal 2 binary64) (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) phi1))
(*.f64 phi1 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 phi2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 phi2 (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 #s(literal 2 binary64) phi2))
(*.f64 #s(literal 2 binary64) (*.f64 phi2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))))))))))
(*.f64 #s(literal 2 binary64) (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) R))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))))))))))
(*.f64 #s(literal 2 binary64) (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)))))) R))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi1) (neg.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi1) (neg.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)))))))))
(*.f64 #s(literal 2 binary64) (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)))))) R))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))))) (*.f64 R #s(literal 2 binary64)))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) #s(literal 2 binary64))) #s(literal 2 binary64))))))))
Symmetry

(negabs R)

Compiler

Compiled 70 to 26 computations (62.9% saved)

eval0.0ms (0%)

Compiler

Compiled 5 to 5 computations (0% saved)

prune2.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
65.1%
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
Compiler

Compiled 140 to 52 computations (62.9% saved)

simplify12.0ms (0%)

Algorithm
egg-herbie
Rules
15×*-commutative
14×+-commutative
13×sub-neg
10×neg-sub0
10×neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035256
152256
266256
384256
4100256
5114256
6122256
7127256
8129256
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
Outputs
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))))))
(*.f64 R (*.f64 #s(literal 2 binary64) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64))) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) #s(literal 2 binary64)))))))))))

soundness1.0ms (0%)

Stop Event
fuel
Compiler

Compiled 70 to 26 computations (62.9% saved)

preprocess54.0ms (0.1%)

Remove

(negabs R)

Compiler

Compiled 560 to 208 computations (62.9% saved)

end0.0ms (0%)

Profiling

Loading profile data...